JRE mit Application ausliefern

Ingerten

Bekanntes Mitglied
Hallo zusammen,

hab mal ne frage, ich habe vor einiger Zeit gesehen, das man bei Launch4j die JRE als Bundle angeben kann, so das man die JRE mit der App ausliefert und kein Java auf dem Rechner installiert sein muss, um die App zu starten.

Was gibt es denn noch für Wege, um das umzusetzen?
 
Danke erstmal für deine Hilfe,

bin jetzt endlich dazu gekommen, mir das mal in Ruhe anzuschauen und es ist genau das, was ich mir vorgestellt habe.
Ich habe es nach dieser Anleitung umgesetzt und habe aber noch mal ne Frage dazu.

Nachdem ich die "build.xml" und im Anschluss die Installations-Datei ausgeführt habe, wird mir unter anderem eine .cfg Datei erstellt.
die sieht etwa so aus:

Code:
[Application]
app.name=Titel
app.mainjar=Build.jar
app.version=1.0
app.preferences.id=fxApplication
app.mainclass=application/Main
app.classpath=Build.jar
app.runtime=$APPDIR\runtime
app.identifier=fxApplication

[JVMOptions]

[JVMUserOptions]

[ArgOptions]

Meine Frage ist, kann ich in der Zeile "app.runtime=$APPDIR\runtime" irgendwie auf "JAVA_HOME" verweisen?
Mit "app.runtime=C:\Program Files\Java\jre-9.0.1" klappt es, aber ich bekomme es nicht mit "JAVA_HOME" hin.
 
Hallo Zusammen

Mit Java 9 geht das mit JLink. Hier kann man seine eigene VM "bundeln". D.h. seine eigene kleine VM ausliefern, ohne Installer.

Gruss
Matthias
 
Danke für deine Hilfe,

JLink werde ich mir dann auch mal anschauen, aber ich würde gerne wissen, ob das mit "JAVA_HOME" klappt,
hat da einer ne Idee?
 
Ja, aber es geht auch da drum, das ich es auch mal mit der JAVA_HOME JRE testen kann.
Oder was mach ich dann, wenn die JRE doch mal ein update brauch und man jemanden am Rechner sitzen hat, der nicht so viel Erfahrung hat.
Dem kann ich dann wenigstens sagen, das er die neuste JRE installieren und in der Datei diese Zeile ändern soll.

Vielleicht ist da mein Ansatz falsch, aber ich versuche eben schon eine Lösung zu haben, bevor das Problem entsteht,
deshalb meine Frage, ob das möglich ist.
 
Du solltest dich für eines entscheiden - entweder JRE mitliefern oder das bereits installierte.

Wenn das mitgelieferte JRE ein update braucht, lieferst du einfach deine ganze Applikation neu aus.

Eins mitzuliefern, aber den Nutzer dann händisch ein neues installieren lassen halte ich für Unsinn. Wenn er das könnte, könnte er direkt eins installieren, und du müsstest keins mitliefern.
 
Hallo Ingerten

Normalerweise hat so ein Installer einfach eine Möglichkeit auszuwählen:

a) Willst Du mit meiner JVM gehen?
b) Willst Du mit einer JVM Deiner Wahl gehen, die schon installiert ist?

Ganz ehrlich: Ich finde mitgelieferte JVM's tatsächlich besser. Warum? Ganz einfach: Der Hersteller hat ganz sicher mit dieser JVM getestet. Simple as that.

... und jetzt komme ich wieder mit Java 9: Hier ist das doch super elegant, wenn man sich dann einfach so mal kurz die JVM selbst zusammenbauen lassen kann.

Gruss
Matthias
 
JRE + Anwendung hat er hier auch schon...

Und Docker oder Kubernetes für Endkunden, deren Erfahrungsstand kaum über das Installieren von Java hinausgeht?
Das ist Riesen Overhead für in diesem Fall keinen wirklichen Vorteil.
 

Neue Themen


Zurück
Oben