Dies funktioniert nicht -vm% JAVA_HOME% / bin / javaw.exe
Wie kann ich% JAVA_HOME% unter Windows 8 durch den vollständigen Pfad ersetzen, wenn der Pfad Speicherplatz enthält (Verzeichnis "Programmdateien")?
Dies funktioniert nicht -vm% JAVA_HOME% / bin / javaw.exe
Wie kann ich% JAVA_HOME% unter Windows 8 durch den vollständigen Pfad ersetzen, wenn der Pfad Speicherplatz enthält (Verzeichnis "Programmdateien")?
%JAVA_HOME%\bin\javaw.exe
mit einem Schrägstrich versucht ? Haben Sie die JAVA_HOME
Eigenschaft des Umweltsystems festgelegt?
Antworten:
Hast du es versucht. Setzen Sie nicht alles in eine Zeile.
-vm
C:\Program Files\Java\jdk1.6.0_07\bin\
Sie müssen den Ordner ablegen, der die ausführbare Java- oder Java-Datei enthält. Unter Ubuntu 18 mit Eclipse 4.7.1 konnte ich es zum Laufen bringen mit:
-vm
/usr/lib/jvm/java-8-openjdk-amd64/bin
-startup
plugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.500.v20170531-1133
-vmargs
-Xmx2G
-Xms200m
-XX:MaxPermSize=384m
Wenn es nicht funktioniert, bestätigen Sie bitte, dass Sie die obigen Zeilen zuvor -vmargs
in hinzugefügt haben eclipse.ini
.
Fügen Sie den Eintrag von vm über den vm-Argumenten hinzu, sonst funktioniert es nicht ..! dh `
-vm C: \ Programme \ Java \ jdk1.7.0_75 \ bin \ javaw.exe --launcher.appendVmargs -vmargs -Dosgi.requiredJavaVersion = 1.6 -Xms40m -Xmx512m
Die -vm
Option muss erfolgen , nachdem die anderen Eclipse - spezifischen Optionen (wie zB -product
, --launcher.*
usw.), aber vor der -vmargs
Wahl, da alles nach -vmargs
wird direkt an die JVM übergeben. Fügen Sie die -vm
Option in einer eigenen Zeile und den Pfad zu Ihrer ausführbaren JDK- Datei in der folgenden Zeile hinzu. z.B
-vm
C:\Program Files\Java\jdk1.8.0_161\bin\javaw.exe
-vm
Optionbin
Verzeichnis, nicht aufjavaw.exe
Wenn Sie in Ihrer eclipse.ini
Datei keine virtuelle Maschine angeben , denken Sie möglicherweise, dass die JAVA_HOME
Umgebungsvariable verwendet wird, dies ist jedoch nicht der Fall!
Aus FAQ_How_do_I_run_Eclipse # Find_the_JVM
Eclipse konsultiert NICHT die Umgebungsvariable JAVA_HOME.
Stattdessen wird der Windows-Suchpfad gescannt.
Empfehlung
Sie halten es möglicherweise für eine gute Idee, den Suchpfad zu verwenden, da er flexibel ist.
Dies ist zwar richtig, hat aber auch den Nachteil, dass der Suchpfad durch Installieren oder Aktualisieren von Programmen geändert werden kann.
Daher empfehle ich, die explizite Einstellung in der eclipse.ini
Datei zu verwenden.
Der Grund, warum Sie das bin
Verzeichnis und nicht das javaw.exe
(wie in vielen anderen Antworten vorgeschlagen) angeben sollten , besteht darin, dass der Launcher dann dynamisch auswählen kann, welcher Weg der beste ist, um die JVM zu starten. Weitere Informationen finden Sie unter Details zum Startvorgang :
In diesem Verzeichnis suchen wir nach: (1) einer default.ee-Datei, (2) einem Java-Launcher oder (3) der gemeinsam genutzten jvm-Bibliothek.
Sie können im Konfigurationsdialog überprüfen, welche VM von Ihrer ausgeführten Eclipse-Instanz verwendet wird .
In Eclipse Oxygen gehen Sie zu Hilfe - Über Eclipse - Installationsdetails - Konfiguration
Sie sehen, welchen VM-Pfad Eclipse ausgewählt hat, z.
eclipse.vm=C:\Program Files\Java\jdk1.8.0_161\bin\..\jre\bin\server\jvm.dll
-vm
sollte nicht oben in Ihrer eclipse.ini
Datei sein. In dieser Dokumentation heißt es: "Die Option -vm muss nach den anderen Eclipse-spezifischen Optionen (wie -product, --launcher. * Usw.), jedoch vor der Option -vmargs auftreten, da alles nach -vmargs direkt an die übergeben wird JVM. " Muss auch auf eine ausführbare Datei verweisen, nicht auf ein Verzeichnis.
Ich hatte das gleiche Problem, konnte es aber nicht lösen, bis ich Folgendes versuche:
-vm
Enter
C:\Program Files\Java\jdk1.6.0_07\bin\javaw.exe
Wenn Sie einen Mac verwenden, fahren Sie mit den folgenden Schritten fort:
Wechseln Sie in folgendes Verzeichnis:
/sts-bundle/STS.app/Contents/Eclipse
Fügen Sie das Java-Home explizit in die STS.ini-Datei ein:
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/bin
-vmargs
Stellen Sie sicher, dass nicht alle Anweisungen in einer Zeile hinzugefügt werden
Lösung in: Wie setze ich die Option eclipse.ini -vm?
-vm C: \\ bin
-vm
C:\<java_path>\bin
Muss das erste in eclipse.ini sein
Alle obigen Antworten haben bei mir nicht funktioniert. Mein Eclipse-Mars ist x64, aber ich muss die Registrierungs-DLL für eine andere Software auf x86 setzen.
Am Ende habe ich -vm Argument am Ende der Verknüpfung gesetzt und das hat den Trick gemacht.
D:\mars\eclipse\eclipse.exe -vm "C:\Program Files\Java\jre7\bin\server\jvm.dll"
Laut diesem Dokument funktioniert jvm.dll in einigen Fällen auch.
Auch wenn Ihr% JAVA_HOME% Leerzeichen enthält, können Sie dort direkt die gesamte Zeichenfolge einfügen.
-vm
C:\Program Files (x86)\Java\jdk1.8.0_162\bin
Außerdem müssen Sie javaw.exe nicht im Pfad angeben, sondern nur erwähnen, bis bin javaw.exe im Ordner bin selbst findet. Denken Sie nur daran, dass die von Ihnen bereitgestellte JDK-Version mit der von Ihnen verwendeten Eclipse-Version übereinstimmen sollte.
Wenn Sie ein 64-Bit-Java verwenden, laden Sie 64-Bit-Eclipse herunter. Wenn Sie ein 32-Bit-Java verwenden, laden Sie 32-Bit-Eclipse herunter.
Ich habe Windows 8.1 und mein JDK auch unter "Programme". Für mich hat es funktioniert, den Namen des Ordners durch den 8-stelligen internen MS-DOS-Namen zu ersetzen.
-vm
C:/PROGRA~1/Java/jdk1.8.0_40/bin/javaw.exe
Ich erkannte, was los war, nachdem ich dies in cmd.exe ausgeführt hatte
CD \
DIR P* /X
Es kehrte zurück ...
<DIR> PROGRA~1 Program Files
<DIR> PROGRA~2 Program Files (x86)
So können wir herausfinden, wie ein Pfad verwendet wird, der Leerzeichen enthält
-vm C: \ Programme \ Java \ jdk1.6.0_07 \ bin \ javaw.exe