Programm Läuft nicht auf anderen Pcs

Nilsy8214

Aktives Mitglied
Also ich habe einen Ordner mit meine Datein für mein Javafx Programm und wenn ich run.bat drücke geht das auch aber wenn ich den Ordner auf einen USB stick packe und das an anderen PCs teste öffnet sich nur die cmd und sonst passiert nichts ich habe extra darauf geachtet das in der .bat kein Absuluter Pfad zu dem openjfx ist also da steht das drin
Code:
java --module-path "openjfx-17.0.0.1_windows-x64_bin-sdk\javafx-sdk-17.0.0.1\lib" --add-modules javafx.controls,javafx.fxml -jar Vo.jar
und ich hab auch darauf geachtet das auf den anderen PCs Java drauf ist jedoch geht es nichts und wenn ich google find ich nichts hilfreiches
 

Anhänge

  • sadascascsacnhg,kjlkoöo.PNG
    sadascascsacnhg,kjlkoöo.PNG
    9,2 KB · Aufrufe: 2
auf den anderen pcs muss genau die java version drauf sein mit der du die jar verpackt hast du gibst ja deine jvm nicht mit

falls das nicht der fall ist, gib in der cmd den befehl ein den du in der bat ausfühst normalerweise sollte es dabei zu einer fehlermeldung kommen
 
auf den anderen pcs muss genau die java version drauf sein mit der du die jar verpackt hast du gibst ja deine jvm nicht mit

falls das nicht der fall ist, gib in der cmd den befehl ein den du in der bat ausfühst normalerweise sollte es dabei zu einer fehlermeldung kommen
Also da kommt could not create the Java Virtual Machine

bedeutet dass das die Falsche Java Version ist
 
entweder falsche java version, java ist nicht installiert, es fehlt was in java... es kann im prinzip java nicht starten

deswegen kann man mit maven die jvm mit liefern um aus dem problem raus zu kommen
oder immer schauen dass der andere pc genau das gleiche java bietet wie auf deinem laptop
 
Zuletzt bearbeitet von einem Moderator:
Es muss ja nicht nur Java sondern auch JavaFX mit drauf sein.

Wenn Du Dein Programm weiter geben willst, dann würde ich ganz klar dazu raten, dass Du die ab Java 9 üblichen Wege beschreitest:
- Mit JLink ein Image bauen, das dann alles enthält.
- Mit JPackage dann noch ein app-Image bauen (Ab Java 14 verfügbar), so dass Du ein Binary statt eines batch Files zum Start hast.

Das ist dann nutzbar, ohne dass der Andere ein Java oder ein JavaFX installieren muss. Der Umfang ist natürlich größer als nur eine kleine jar Datei, aber ein paar MB sind ja schon lange kein Problem mehr.

Und dazu dann auch am Besten ein Build-Tool nutzen wie Maven oder Gradle - das vereinfacht es auch noch einmal deutlich.
 
Es muss ja nicht nur Java sondern auch JavaFX mit drauf sein.

Wenn Du Dein Programm weiter geben willst, dann würde ich ganz klar dazu raten, dass Du die ab Java 9 üblichen Wege beschreitest:
- Mit JLink ein Image bauen, das dann alles enthält.
- Mit JPackage dann noch ein app-Image bauen (Ab Java 14 verfügbar), so dass Du ein Binary statt eines batch Files zum Start hast.

Das ist dann nutzbar, ohne dass der Andere ein Java oder ein JavaFX installieren muss. Der Umfang ist natürlich größer als nur eine kleine jar Datei, aber ein paar MB sind ja schon lange kein Problem mehr.

Und dazu dann auch am Besten ein Build-Tool nutzen wie Maven oder Gradle - das vereinfacht es auch noch einmal deutlich.
Was ist ein JLink, JPackage oder ein app-Image weil ich hab das noch nie gehört und jedes Google ergebnis verwirrt mich nur noch mehr oder anders wie macht man sowas in dem Fall
 
JLink und JPackage sind Tools, die ein aktuelles JDK mit bringt. Ein app-image ist einfach ein Verzeichnis, dass alle Dateien enthält, die benötigt werden, also incl. der Java Runtime, allen Abhängigkeiten und so.

Hier ist die Frage erst einmal, wie Du derzeit alles baust. Wie verwaltest Du Dein Projekt? Dann kann man schauen, ob das aktuell genutzte Tool sowas einbinden und aufrufen kann. Ansonsten wäre der Tipp halt, sich auch mit Maven auseinander zu setzen.
 
JLink und JPackage sind Tools, die ein aktuelles JDK mit bringt. Ein app-image ist einfach ein Verzeichnis, dass alle Dateien enthält, die benötigt werden, also incl. der Java Runtime, allen Abhängigkeiten und so.

Hier ist die Frage erst einmal, wie Du derzeit alles baust. Wie verwaltest Du Dein Projekt? Dann kann man schauen, ob das aktuell genutzte Tool sowas einbinden und aufrufen kann. Ansonsten wäre der Tipp halt, sich auch mit Maven auseinander zu setzen.
ich bin mir nicht sicher was du mit "aktuell genutzte Tool" meinst aber momentan hab ich wie im Bild gezeigt einfach meine .jar dann javafx und noch eine .bat datei die halt die Jar aufruft und (wenn man das so sagen kann) javafx übergibt . Da kamm dann aber halt das Problem das ich mit dieser Methode das Programm nicht auf anderen Pcs ausführen kann und das die cmd immer offen bleiben muss
 

Neue Themen


Zurück
Oben