3

私は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 7 ではすべて問題なかったので、古い Windows のバグのように見えます。

すでにテスト済み:

  • x86 の代わりに x64 Java をインストールする
  • パスの末尾に / を付ける
4

1 に答える 1

0

パス内の空白に関係している可能性があります。適切に定義しましたが、一部のスクリプトでは次のように使用される場合があります。

%JAVA_HOME%\bin\java ...

失敗します。このような場合、常に引用符を覚えておく必要があります。

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

動作がランダムであると言うことを除いて...とにかく、名前に空白が含まれていないフォルダーにインストールを移動してみてください。それが何をするかを確認してください。

于 2013-03-21T11:49:49.630 に答える