这不起作用 -vm%JAVA_HOME%/ bin / javaw.exe
当路径包含空格(“程序文件”目录)时,如何用Windows 8上的完整路径替换%JAVA_HOME%
答案 0 :(得分:134)
你试过吗?不要把所有东西都放在一条线上。
-vm
C:\Program Files\Java\jdk1.6.0_07\bin\
需要放置包含javaw或java可执行文件的文件夹。在带有eclipse 4.7.1的Ubuntu 18下,我能够运行:
-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
如果它不起作用,请确认您在-vmargs
eclipse.ini
之前添加了上面的行。
答案 1 :(得分:41)
在vm args上方添加vm的条目,否则它将无法工作..! 即`
-vm C:\Program Files\Java\jdk1.7.0_75\bin\javaw.exe --launcher.appendVmargs -vmargs -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx512m
答案 2 :(得分:6)
如果您使用的是Mac,请继续执行以下步骤:
转到以下目录:
/sts-bundle/STS.app/Contents/Eclipse
在STS.ini文件中显式添加java home:
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/bin
-vmargs
确保不添加单行
中的所有语句答案 3 :(得分:6)
我遇到了同样的问题但无法解决,直到我尝试这个:
-vm
Enter
C:\Program Files\Java\jdk1.6.0_07\bin\javaw.exe
答案 4 :(得分:5)
在ghci> :set -XTypeApplications
ghci> :t (-) @Int
(-) @Int :: Int -> Int -> Int
文件的顶部处添加eclipse.ini
选项,其中包含JDK bin目录的路径;例如
-vm
-vm
C:\Program Files\Java\jdk1.8.0_161\bin\
选项-vm
目录,而不是bin
如果未在javaw.exe
文件中指定虚拟机,您可能会认为使用了eclipse.ini
环境变量,但事实并非如此!
来自FAQ_How_do_I_run_Eclipse#Find_the_JVM
Eclipse不会参考JAVA_HOME环境变量。
而是扫描Windows搜索路径。
<强>建议强>
您可能认为使用搜索路径是个好主意,因为它很灵活
虽然这是事实,但它的缺点是可以通过安装或更新程序来改变搜索路径
因此,我建议使用JAVA_HOME
文件中的显式设置。
您应该指定eclipse.ini
目录而不是bin
(由许多其他答案提出)的原因是,启动程序可以动态选择哪个是启动JVM的最佳方式。有关所有详细信息,请参阅details of the launcher process:
我们在该目录中查找:(1)default.ee文件,(2)java启动器或(3)jvm共享库。
您可以在配置对话框中验证正在运行的eclipse实例使用的VM 在eclipse Oxygen中转到帮助 - 关于Eclipse - 安装细节 - 配置
您将看到eclipse选择了哪个VM路径,例如:
javaw.exe
答案 5 :(得分:3)
以上所有答案对我都没有用。我的Eclipse火星是x64但是我需要将注册表dll设置为x86以用于另一个软件。
最后我在快捷方式的末尾放了-vm参数,这就行了。
D:\mars\eclipse\eclipse.exe -vm "C:\Program Files\Java\jre7\bin\server\jvm.dll"
根据this doc jvm.dll也适用于某些情况。
答案 6 :(得分:2)
答案 7 :(得分:2)
即使您的%JAVA_HOME%包含空格,也可以直接将整个字符串放在那里。
-vm
C:\Program Files (x86)\Java\jdk1.8.0_162\bin
另外,你不必在路径中指定javaw.exe,只要提到它就会在bin文件夹中找到它自己的javaw.exe。 请记住,您提供的jdk版本应与您正在使用的eclipse版本匹配。
如果您使用的是64位Java,那么请下载64位Eclipse。 如果您使用的是32位Java,那么请下载32位Eclipse。
答案 8 :(得分:1)
Windows-vm“C:\ Program Files \ Java \ jdk1.6.0_07 \ jre \ bin \ javaw.exe”
答案 9 :(得分:1)
我有Windows 8.1和我的JDK&#34; Program Files&#34;同样。对我有用的是用8位内部MS-DOS名称替换文件夹的名称。
-vm
C:/PROGRA~1/Java/jdk1.8.0_40/bin/javaw.exe
我意识到在cmd.exe中运行它之后发生了什么
CD \
DIR P* /X
它回来了......
<DIR> PROGRA~1 Program Files
<DIR> PROGRA~2 Program Files (x86)
因此我们可以找到如何使用包含空格的路径
答案 10 :(得分:0)
尝试用反斜杠逃离空间..比如
C:\ program \ folder \ \ name \ java \ jdk \ bin
答案 11 :(得分:0)
转到cmd中的C驱动器根目录 输入dir / x 这将使用〜.use列出目录名称,而不是jdk路径中的Program Files
答案 12 :(得分:0)
有时路径中的空格会产生问题。 您可以添加例如 -vm C:\progra~1\Java\jre1.8.0_112\bin\javaw.exe
答案 13 :(得分:-3)
-vm C:\ Program Files \ Java \ jdk1.6.0_07 \ bin \ javaw.exe
答案 14 :(得分:-8)
重新安装java并选择没有空格的目标文件夹