it-swarm.com.de

Ich kann JNLP-Anwendungen nicht mit "Java Web Start" starten.

Bis vor kurzem konnte ich JNLP -Dateien in Firefox mit Java web start starten/öffnen.

Ich weiß nicht, was plötzlich passiert ist JNLP wurde nicht mehr gestartet. Ein Begrüßungsbildschirm wird mit Java angezeigt. Starten ... und dann passiert nichts. Sogar die Java Console im Browser und das javacpl.cpl -Applet lassen sich nicht öffnen.

Habe alle Möglichkeiten ausprobiert: alle älteren Versionen entfernt und die neueste JRE (Java-Version "1.6.0_17") installiert, trotzdem funktioniert es nicht.

Nachdem das Problem durchgelaufen wurde, schlugen die Leute vor, javaws.exe mit der Option -viewer zu starten, dasselbe Verhalten (ein Begrüßungsbildschirm mit der Meldung "Java wird gestartet ..." und verschwindet dann).

Das Problem ist, dass ich keinen Ort (Protokolle usw.) kenne, an dem ich suchen kann, um herauszufinden, was das Problem verursacht.

Ich verwende WinXP SP3 und einige der folgenden Screenshots zeigen weitere Informationen zu meinem System. Ich kann bei Bedarf andere Details angeben, aber bitte helfen Sie mir, dieses Problem zu lösen.

19
akjain

Obwohl diese Frage etwas alt ist, wurde das Problem durch eine beschädigte ClearType-Registrierungseinstellung verursacht und durch Beheben der in dieser ClearType, install4j und bei Java bug post.

ClearType, install4j und der Fall von Java bug Java

Wissen Sie, was ClearType (Schriftglättungstechnologie in Windows) mit Java (Programmiersprache und eines der empfohlenen Frameworks) gemeinsam hat?

Nichts außer, dass sie hart zusammengearbeitet haben, um mich für einige Monate unglücklich zu machen. Ich hatte eine Java Software, die ich nicht installieren konnte. Ich meine, ich konnte es wirklich nicht - nicht einmal herausfinden oder auf einem anderen PC reproduzieren.

Vor kurzem wurde ich für die Beta-Version von Woopra (Site Analytics Service) zugelassen und es wird ein in Java geschriebener Desktop-Client verwendet. Ich konnte nicht installieren. Das hat mich wirklich wütend gemacht. :)

Story Die gesamte fragliche Software war ähnlich:

setup basiert auf install4j; Setup stürzt mit vielen Fehlern ab. Ich beschuldigte install4j während früher (ungefähr hundert) Versuche, das Problem zu lösen. Später wurde mir langsam klar, dass eine Lösung geschaffen und gegoogelt worden wäre, wenn sie für so lange Zeit fehlerhaft gewesen wäre.

Ablaufverfolgung Nachdem ich den Fokus von install4j verschoben hatte, entschied ich mich für das Push Java Framework. Ich habe früher Stable-Versionen ausprobiert und mich daher für den nicht-stabilen Release-Kandidaten für 1.6 Update 10 entschieden.

Dies behebt eigentlich Fehlermeldungen aber stürzt nicht ab. Mir war auch aufgefallen, dass im Verzeichnis mit den Setup-Dateien ein neues Fehlerprotokoll erstellt wurde. Bisher hatte ich nur Protokolle im temporären Windows-Verzeichnis gesehen.

Das neue Fehlerprotokoll sagte Folgendes:

Die GUI konnte nicht angezeigt werden. Diese Anwendung benötigt Zugriff auf einen X-Server. Wenn Sie Zugriff haben, fehlt wahrscheinlich eine X-Bibliothek. *************************************************** ***************** Sie können diese Anwendung auch im Konsolenmodus ohne Zugriff auf einen X-Server ausführen, indem Sie das Argument -c übergeben. Es ist sehr seltsam, unter Nicht-Linux nach X-Server zu suchen PC, nicht wahr? Also habe ich mich für das Argument "-c" entschieden. Und konnte tatsächlich im Konsolenmodus installieren.

Happy End? Nee. Die jetzt installierte App stürzte ab. Aber es hat mich wirklich zum Nachdenken gebracht. Wenn die Konsole funktioniert, die grafische Benutzeroberfläche jedoch nicht, liegt möglicherweise ein Problem mit letzterer vor.

Ein weiteres Fehlerprotokoll (im Anwendungsordner) sagte nun (unter anderem):

Auslöser: Java.lang.IllegalArgumentException: -60397977 Inkompatibel mit textspezifischem LCD Kontrastschlüssel. Die Beschreibung des Fehlers mit Java konnte die nicht standardmäßige ClearType-Registrierungseinstellung nicht lesen.

Lösung Ich habe ClearType Tuner sofort über die Systemsteuerung gestartet und eine Einstellung gefunden, die die Kauderwelschzahl anzeigt. Nach einer korrekten Korrektur waren alle Probleme mit Java sofort behoben.

cleartypetuner_screenshot Lektionen, die Sie gelernt haben Geben Sie Softwareproblemen nicht schnell die Schuld an einer einzelnen Anwendung. Selbst geringfügige und völlig unabhängige Einstellungen können tödliche Kettenreaktionen auslösen. Links Jave Runtime Environment http://www.Java.com/en/download/index.jsp

ClearType Tuner http://www.Microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx

Woopra http://www.woopra.com/

install4j http://www.ej-technologies.com/products/install4j/overview.html

3
akjain

Sehen Sie sich an, was passiert, wenn Sie javaws.exe direkt von der Befehlszeile aus ausführen. 

Ich weiß, dass dies eine ältere Frage ist, aber in der letzten Woche bekam ich ein ähnliches Problem, daher lasse ich hier einige Anmerkungen bezüglich der Lösung, die zu mir passt.

Dies geschah nur auf einigen Windows-Computern, die sogar die letzte JRE (1.8.0_45) verwendet haben.

Der Java Web Start wurde gestartet, aber nichts geschah und keiner der vorherigen Lösungsversuche funktionierte.

Nach einigem Graben habe ich diesen Thread gefunden, der dasselbe Setup und eine großartige Erklärung liefert.

https://community.Oracle.com/thread/3676876

Zusammenfassend war dies ein Speicherproblem in x86 JRE. Da der maximale Heap-Speicher in unserem JNLP als 1024 MB definiert wurde, haben wir wie vorgeschlagen auf 780 MB geändert und das Problem wurde behoben.

Wenn Sie jedoch mehr als 780 MB benötigen, können Sie immer versuchen, eine x64-JRE-Version zu starten.

9
hpereira

ich hatte hier das gleiche Problem. Gehen Sie zu Ihrem Java-Steuerungsfeld und zu den Einstellungen. Deaktivieren Sie "Temporäre Internetdateien auf meinem Computer behalten". Übernehmen Sie die Änderungen und versuchen Sie es erneut .jnlp 

Hinweis: Getestet auf verschiedenen Maschinen; Windows Server 2012, Windows Server 2008 und Windows 7 64bit. Java Version: 1.7 ++, da meine jnlp-App auf 1.7 basiert

Bitte lassen Sie mich auch Ihr Feedback wissen. : D

7
nairb

Ich stand auch vor dem gleichen Problem. So beheben Sie die folgenden Schritte.

  1. Öffnen Sie Javaws aus dem Befehl cmd runnig javaws -viewer. Ein neues Fenster wird geöffnet
  2. Wählen Sie die gewünschte Jnlp-Datei aus und klicken Sie auf die Schaltfläche Ausführen.
  3. Schließen Sie das Java-Viewer-Fenster.
1
Sumith08

Wenn javacpl nicht geöffnet wird und Sie Konnte die Hauptklasse nicht finden:, könnte es sein, dass Java aufgrund von Änderungen in deploy.properties (das sich in C:\Users\<username>\AppData\LocalLow\Sun\Java\Deployment on Win7 befindet) verwirrt ist. Löschen Sie diese Datei und alles ist in Ordnung.

Dieser Fehler scheint 6 Jahre alt zu sein, cf . Eine App sollte in der Lage sein, Eigenschaften zu ignorieren, die im Laufe der Zeit veraltet sind, oder?

1
Bob Lauer

Ich wollte die Hauptursache für mein Problem mitteilen. Ich habe unter Windows High DPI verwendet und dadurch konnte JNLP nicht gestartet werden. Ich musste High DPI ausschalten, damit dies funktioniert. Hoffe das hilft.

0
A br

Ist dies eine Anwendung, für die Sie den Code haben? Java 6u14 enthielt eine Änderung der Art und Weise, wie Jar-Sicherheit behandelt wird, die für uns sehr ähnliche Probleme verursacht hat. Wenn Ihre Gläser signiert sind und mit Java 6u13 oder darunter arbeiten, können Sie entweder den Code umgestalten, um dieses Update zu umgehen, oder Java 6u13 oder darunter erfordern. Leider erinnere ich mich nicht genau, was wir getan haben, um das Problem zu lösen. Damals war es der Panikmodus.

Wenn Sie über den Code verfügen, können Sie mit Tools arbeiten. Sie können System.out.println-Anweisungen in Ihre Startroutinen einfügen. Alle Ausgaben der Konsole werden im Befehlsfenster angezeigt, wenn Sie JNLP über die Befehlszeile ausführen. Andernfalls können Sie einen Nice-Logger wie log4j verwenden, um eine bessere Vorstellung von der Fehlerstelle zu erhalten.

Sie können auch die Anwendung vollständig entfernen und erneut herunterladen. Java Web Start verfügt über ein Systemsteuerungs-Applet, mit dem Sie die URL sehen können, von der Ihre App heruntergeladen wird (dies könnte die falsche sein), die App deinstallieren, Sicherheitsoptionen festlegen usw.

0
spork

In meinem Fall wurde das Problem dadurch verursacht, dass meine App über eine Verknüpfung auf dem öffentlichen Desktop (Windows 7) gestartet wurde. Soweit ich das beurteilen kann, wurde der Speicherort für temporäre Dateien auf c:\users\public\etc gesetzt. Dies führte dazu, dass nicht in das Cache-Detail geschrieben werden konnte. Wenn ich im Steuerprogramm für temporäre Dateien auf die Standardeinstellungen zurücksetze, funktionierten alle einwandfrei.

0
Rick

Dies kann auch auf die Umgebungsvariable CATALINA_HOME in Ihrem System zurückzuführen sein. In unserer Organisation gab es mehrere Fälle, in denen JNLP-Anwendungen den Start ohne Protokollierung verweigerten und CATALINA_HOME das Problem lösten.

Ich hatte die Umgebungsvariable in der Eingabeaufforderung gesetzt und wurde nicht in der GUI angezeigt. Ich bin nicht sicher, ob der Befehl setx oder das Entfernen von Registern den Trick ausgeführt hat. Nach dem Entfernen der Variablen scheint ein Neustart erforderlich zu sein.

0
Marc.S

Ich glaube, das ist ein Sicherheitsproblem. Wenn ich die jnpl-Datei herunterlade und nach einer sauberen Java 8-Installation über javaws myfile.jnpl alles funktioniert gut (ich bekomme mehrere Fenster, in denen ich einige Sicherheitsprobleme bestätigen muss).

0
eventhorizon

Ich hatte genau das gleiche Problem. Es stellte sich heraus, dass die Max-Heap-Größe auf 1024 eingestellt war und die Einheit fehlte. Die Konfiguration musste max-heap-size = 1024 m sein.

Anscheinend führt eine ungültige Speicherkonfiguration in der JNLP-Datei zu genau diesem Verhalten.

0
Bech

In meinem Fall erstellt Netbeans automatisch eine .jnlp-Datei, die nicht funktioniert. Mein Problem war ein versehentliches Überschreiben der launch.jnlp-Datei auf dem Server (durch die unzureichende und falsche Version von Netbeans). Dies führte zu einem Konflikt zwischen der lokalen .jnlp-Datei und der fernen .jnlp-Datei, was dazu führte, dass Java Web Start nach "Anwendung überprüfen" gerade beendet wurde.

So muss niemand sonst eine Stunde damit verschwenden, einen Fehler zu finden, der von Java WS angemessen (aber nicht) kommuniziert werden sollte.

0
ryvantage