Ziel unterschiedliche Version von JRE

8

Ich teste Java auf einem Windows Surface Pro. Das Surface Pro hat Java 7 Update 55, aber hat das JDK nicht installiert.

Ich habe ein Programm auf meinem MacBook von der Kommandozeile mit javac kompiliert. Das MacBook hat Java 8 Update 5 und es enthält das JDK (offensichtlich, weil ich auf dem MBP kompiliert habe).

Wenn ich das Programm vom MackBook zum Surface Pro verschiebe, erhalte ich den folgenden Fehler. Hier bedeutet "Verschieben des Programms", dass Sie die zwei Dateien *.class auf die neue Maschine kopieren und versuchen, die Bytecodes auszuführen.

%Vor%

Der Versuch, mit Zielinformationen zu kompilieren, führt zu:

%Vor%

javac -help listet keine Optionen zum Steuern der Versionsinformationen des kompilierten Programms auf (außer target , das scheinbar nicht funktioniert).

Wie kompiliere ich meine Quelldateien für Down-Level-Versionen einer JRE? In diesem Fall leite ich Java 7 von einer Java 8-Maschine aus.

    
jww 13.05.2014, 09:34
quelle

2 Antworten

2

Wenn Sie Eclipse verwenden, können Sie die Compiler-Konformitätsebene in den Projekteigenschaften festlegen - & gt; Java-Compiler. Dein Code wird also für die gewählte Java-Version kompiliert. Siehe hier:

    
chux 27.07.2017 11:36
quelle
2

Wechseln Sie in der Befehlszeile zu:

%Vor%

Die Dokumentation für javac (für JDK 8) lautet hier .

Die Dokumentation für javac (für JDK 9) ist hier .

Hinweis: In JDK 9 wird -target durch --release ersetzt.

    
Daniel Stolz 27.10.2017 18:36
quelle

Tags und Links