JRE installieren oder nicht ?

Hallo,

leider bin ich jetzt etwas verwirrt. Folgendes:

Auf meinem Rechner (Windows/) erstelle ich ein JAR . Nun dachte ich wenn dieses Programm auf einem anderen Rechner laufen soll , dass ich dort die JRE (mit der gleichen Versinsnummer) installieren muss.

Nun habe ich aber gelesen es würde reichen wenn man die JRE zusammen mit dem JAR File auf den Rechner kopiert (ohne die JRE zu installieren) . Stimmt das so ?

Leider habe ich es nicht hinbekommen.

Falls das stimmt wäre es sehr nett wenn mir das jemand mal erklärt was man da alles kopieren muss und natürlich auch mit welchen Versionen das geht (habe es auch leider mit 64 bzw 32 bit Betriebssystemen zu tuen)

Vielen Dank im Voraus


Volker.
 
Es gibt hierfür mehrere Möglichkeiten:
- jlink (falls du Java 9 oder neuer verwendest und deine Anwendung sowie alle Abhängigkeiten Jigsaw Module sind)
- libGDX/packr
- Launch4j (wenn du Windows stand-alone executables bauen möchtest)
- javapackager (Teil des Oracle JDKs)

Ich würde vielleicht erstmal mit Launch4j anfangen, da es eine schöne GUI bereitstellt und aber auch in Maven und Ant Builds eingebunden werden kann.
 
jre einfach kopieren sollte reichen. Java muss dann einfach mit dem ganzen Pfad angesprochen werden oder manuell dem PATH hinzugefügt werden.

Launch4j ist da nicht nötig
 
Hallo,

Vielen Dank für die Antworten , leider hatte ich am WochenEnde sehr wenig zeit um zu Antworten.

Habe jetzt Folgendes gemacht :
Launch4J installiert , EXE erstellt , -> lief bei meinem Rechner (da ist aber auch JAVA installiert) problemlos.
Aber, leider bekomme ich an einem Rechner ohne JAVA (bzw mit alter JRE) die gleiche FehlerMeldung "MainClass nicht gefunden"

Wenn ich die JRE kopiere ist es genauso.

Als IDE habe ich Eclypse , kann es sein dass mir Eclypse da etwas abnimmt was ich nun aber doch im Java-Code eintragen muss ? Muss ich da im JAVA code noch etwas angeben ? Den PATH habe ich zum Beispiel noch nie gebraucht ?

Das sind denke ich bestimmt Anfänger fragen (aber das trifft ja auf mich zu)

Viele Grüße


Volker.
 
Dann halt das Wichtigste in kurzform: Java ist abwärtskompatibel, das heißt wenn Du es zum Bleistift mit Java 8 compilierst kannst Du es auf dem Zielrechner/Zielsystem mit dem vorher installiertem JRE 8, 9 oder 10 starten.
Mehr brauchst nicht zu wissen. :)
 
überhaupt nichts mit der Frage zu tun, aber ok...

@TE beim starten -cp . noch angeben, dann sollte es gehen (Wenn du im Verzeichnis bist, in dem dein Programm befindet
 
Lies dir die Frage nochmal genau durch. Auf dem Zielrechner ist noch keine Java installiert...

Auf die Frage wer wieviel Ahnung hat lässt sich hier im Forum mit dir wohl niemand mehr ein...
 
Hallo,

Vielen Dank Euch beiden.

Aber nun um deas Thema zu beenden , muss ich nun doch nochmals die Möglichkeiten aufzeigen (so wie ich es verstanden habe, damit ich am WE noch etwas zum goooogeln habe)

Also:

1. Ich kann auf meinem Rechner das älteste JaVA installieren und somit erreichen dass auf dem Zielrechner ein neueres ist . Ich denke für mich muss es nicht das neuste JAVA sein aber leider habe ich auch ab und zu gar kein JAVA installiert.

2. Das erstellen einer EXE mit diesem LAUNCH4J da stellt sich mir die Frage ob ich beim erstellen nicht auch diesen Parameter CP (denke ClassPath) setzen kann, denn später kann ich weil ich ja eine EXE habe das nicht mehr machen.

3. Das ist das was ich ja am Anfang gefragt habe : Kann ich die JRE nicht ohne installieren der JAR Datei beifügen ? wo kopiere ich dann was hin ?


Ich würde es am liebsten mit der EXE machen (wenn ich es hinbekomme , gibt es da einen Link zu einer Anleitung?)
Da ich das Programm auf einem USB stick lassen wollte wäre natürlich 3 auch OK
1 wäre natürlich das einfachste aber wie gesagt wenn JAVA nicht installiert ist.

Könnt Ihr mir vielleicht zu den Punkten 2,3 noch etwas sagen , bin für jeden Tip sehr dankbar.

Viele Grüße

Volker.
 
Hallo,

leider bin ich noch zu keinem Ergebnioss gekommen.

Kann mir nicht jemand mal erklären warum ich bei der EXE die ich über Launch4J erstellt habe auch die Meldung "MaiClass nicht gefunden" kommt, was muss ich da einstellen? muss ich da im JAVA-Code etwas angeben?

Wenn ich die Lösung mit dem kopieren der JRE angehen will wo stelle ich die dann hin? kann ich das alles JRE und JAR zusammen auf einem USB Stick haben.

Binn für jede Hilfe dankbar , Ihr wisst das doch bestimmt alle.


Viele Grüße

Volker.
 
Ich gehe davon aus, dass
  1. die JAR-Datei myapp.jar heißt,
  2. die main-Methode in Klasse de.myapp.Main deklariert ist
  3. U der Laufwerksbuchstab für Deinen USB-Stick ist und
  4. Dein JRE unter C:\Program Files\java\jre1.8.0_171 installiert ist
Du kopierst zuerst einmal die JAR-Datei auf Deinen Stick, danach hast Du eine Datei U:\myapp.jar. Dann kopierst Du den jre-Ordner von Deinem Rechner auf den Stick, danach gibt es den Ordner U:\jre1.8.0_171. Jetzt erstellst Du die Datei U:\myapp.bat mit folgendem Inhalt
Code:
@echo off
%~dp0\jre1.8.0_171\bin\javaw.exe -cp %~dp0\myapp.jar de.myapp.Main
Ungetestet, sollte aber funktionieren.

EDIT: gestartet wird die Anwendung natürlich mit einem Doppelklick auf myapp.bat
 
Hallo,

Vielen Dank, werde ich heute Abend (allerdings sehr spät) probieren und morgen antworten.

Viele Grüße Volker.
 
Hallo,

dank der Hilfe habe ich nun einen Quantensprung (jedenfalls für mich) geschafft: Es kommt eine andere Fehlermeldung. Ich denke aber die ist erklär und lösbar.

Beim starten der Batch-Datei erkennt er dass ich nun eine 64bit JRE habe und die nicht zu dem 32bit Betriebssystem passt.

Als JRE habe ich 1.8.0.151 werde da nun mal nach 32bit ausschau halten und dann am montag nochmals probieren.

Ein schönes Wochenende an alle.

Gruss Volker.
 
Hallo,

so jetzt habe ich fast das ganze Wochenende gesucht und leider keine 32bit Version gefunden (welche bei denen mit 64bit dabeisteht gibt es genug).

Nun müsste ich (danke für den Hinweis mit der installer Lösung) auf einem 32 bit Rechner JAVA installieren und dann die JRE nehmen.

Noch eine ganz unwissende Frage: Bei der JRE steht 1.8.0.151 (oder so ähnlich) dabei woher weiss ich denn nun welche JAVA version das ist , denn auf den DownloadSeiten steht immer nur 8,9,10,SE,ME usw.

vielleicht ist das relativ einfach zu erklären ?


Vielen dank


Gruß

Volker.
 
so jetzt habe ich fast das ganze Wochenende gesucht und leider keine 32bit Version gefunden
??? Google: jre 8 32 bit - erstes Ergebnis führt zur Downloadseite von Oracle, dort nimmt man "Windows x86 Offline" (jre-8u171-windows-i586.exe)

Die Versionsnummern sind bei Java eine Wissenschaft für sich :)

Java 8 = 1.8.0_x, wobei x die Updatenummer kennzeichnet. D. h. die Java Runtime Environment 8 Update 171 hat intern die Versionsnummer 1.8.0_171

Ab Java 9 gilt dieses Schema nicht mehr. Das JRE dürfte es eigentlich nur als SE geben.

SE steht für Standard Edition.
ME ist Micro-Edition (Handy)
EE ist Enterprise-Edition

Damit sind verschiedene APIs gemeint. SE sind die Standard-APIs, EE die Enterprise APIs usw.
 
Hallo,

Danke nochmals.

Genau das "??? Google: jre 8 32 bit" wusste ich nicht ich habe nach "1.8.0..... 32 bit" gegoogelt.

Den Download für "jre-8u171-windows-i586.exe" habe ich dann auch irgendwann gesehen brachte das aber nicht mit 1.8.0.... in verbindung.

Durch die installation dachte ich findet JAVA die richtige JRE umgebung.


So werde das jetzt ausprobieren (wahrscheinlich erst am Wochenende)


Vielen Dank nochmals.


Volker.
 
Ein Java 8 Programm beißt sich nur bei extrem hohen Ressourcen(anforderungen) mit einem 32bit JRE 8.
Das ist mal wieder völliger Quatsch der hier geschrieben wird.
Link für nicht so versierte: https://java.com/de/download/
Der wählt direkt den richtigen Installer.

@volkerk Ist Java echt die richtige Programmiersprache für dich, wenn du noch nichtmal weißt wie man es starten kann? (Und scheinbar blind irgendwelchen exe Bundles vertraust?)
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben