Kombination von Launch4J und Java Web Start?

Ich habe eine funktionierende JNLP-Anwendung, die ich an verschiedene nicht-technische Endbenutzer verteilen muss.

Wenn auf dem Computer des Benutzers eine aktuelle JVM installiert ist, ist alles in Ordnung. Sie doppelklicken einfach auf die JNLP-Datei, die ich ihnen sende, und Java Web Start erledigt den Rest.

Jetzt möchte ich etwas verteilen, das mit oder ohne JVM funktioniert, z. ein.exe -Datei, die eine kompatible JVM automatisch herunterlädt, wenn keine vorhanden ist. Ruft dann @ aujavaws.exe, um die JAR-Dateien herunterzuladen und die Anwendung zu starten.

Launch4J ist die beste Übereinstimmung, die ich gefunden habe, aber es kann kein Programm über @ startejavaws.exe. Die einzigen Optionen sindjava undjavaw

Ich hätte gerne ein Produkt, das:

Erzeuge ein in sich geschlossenes.exe -Datei, für die keine JVM vorinstalliert werden mussParse das.jnlp Datei und bestimmen Sie die richtige JVM, die bei Bedarf heruntergeladen werden soll (Ich weiß, dass Java Web Start bei Bedarf eine JVM herunterladen kann, aber ich möchte vermeiden, dass zwei heruntergeladen werden müssen, die erste, um Java Web Start zu booten, und die zweite, um die Anwendung auszuführen, die möglicherweise erfordern eine bestimmte, aber andere JVM.)Downloaden und installieren Sie die JVM automatisch.nich leiten Sie den Benutzer einfach auf eine Java-Download-Seite oder öffnen Sie einen neuen Installationsassistenten.Bitte geben Sie bei Bedarf ein Administratorkennwort ein (für Berechtigungen zum Installieren der JVM. Ich glaube nicht, dass dies in die Sun JVM-Installationsprogramme integriert ist.) Nur einen Sicherheitsdialog anzeigen (Ich möchte den Benutzer nur einmal auffordern, zu bestätigen, dass er dem generierten @ vertrau.exe, aber ich möchte keine zweite Eingabeaufforderung, um zu bestätigen, dass sie dem @ vertrau.jar -Datei, die aus derselben Quelle stammt und mit demselben Zertifikat signiert ist.) Ich gehe davon aus, dass der Auto-Downloader das Zertifikat installieren muss, bevor JWS gestartet wird.) (nicht unbedingt erforderlich) Anwendungsressourcen herunterladen (z. B..jar files) gleichzeitig mit der JVM im Hintergrund. Dies würde erfordern, dass der Cache ausgeführt wird, bevor die JVM installiert wird. Daher müsste der Cache im systemeigenen Code und im @ -Zeichen implementiert werdeDownloadService würde später über JNI darauf zugreifen.

Gibt es ein Produkt wie dieses? Ich vermute nicht, aber es ist einen Versuch wert.

Aktualisiere Ich fandDieser Artike, das Lösungen für einige verwandte Probleme bietet, obwohl es für die Offline-Installation entwickelt wurde und ich mich hauptsächlich mit der Online-Installation befasse.

Antworten auf die Frage(12)

Ihre Antwort auf die Frage