JAVA_HOME在Windows 8上没有设置

时间:2013-03-21 11:21:18

标签: java windows-8 jruby

我正在使用oracle Java 7和JRuby(来自TorqueBox 2.2.0)开发Windows 8。 在终端中,JAVA_HOME环境变量有一些奇怪的行为......

如果我输入“set”,我会得到我所期待的:

JAVA_HOME=C:\Program Files (x86)\Java\jre7

我可以运行bundle exec rspec,它可以工作 然后我跑

set COVERAGE=true

再次运行相同的命令,我会得到

Cannot locate Java installation, specified by JAVA_HOME:

我可以输入这几次,总是一样的结果。但神秘的是,我有时可以做一些像

这样的事情
jruby -S bundle exec spec

它有时会起作用......有时候不会......

这完全是随机的,不可预测的......真是太痛苦了! 有人有什么想法?从我的观点来看,它看起来像一个旧的Windows bug,因为Windows 7上的一切都很好

已经测试过:

  • 安装x64 Java而不是x86
  • 在路径末尾有一个尾随/

1 个答案:

答案 0 :(得分:0)

它可能与路径内的空白有关。您已正确定义它,但某些脚本可能会像这样使用它:

%JAVA_HOME%\bin\java ...

哪个会失败。在这种情况下,必须始终记住引号:

"%JAVA_HOME%\bin\java" ...

除非您说行为是随机的...无论如何,尝试将安装移动到名称中没有空格的文件夹中,看看它的作用。