尽管似乎有很多与在 Windows 中设置 JAVA_HOME 变量相关的问题和答案,但我并不完全确定我哪里出错了。
我已经按照各种不同的说明设置环境变量,当我在 ruby 中检查环境变量时,我得到了
c:\Ruby192>肋骨 irb(main):001:0> 放置 ENV['JAVA_HOME'] "c:\progra~1\java\jdk1.6.0_20" => 无
所以我一直将其解释为设置的环境变量,因为返回了我的 jdk 的路径,但是“nil”是什么?
回显 %JAVA_HOME%
还返回我的 jdk 的路径。
当我跑
宝石安装 rjb
我明白了
extconf.rb:39:in '(main)': JAVA_HOME 不是目录。(运行时错误)
当我查看 extconf.rb 文件时,果然,我得到了
javahome = ENV['JAVA_HOME'] 如果javahome.nil?&& RUBY_PLATFORM =~ /darwin/ javahome = `/usr/libexec/java_home`.strip 结尾 除非javahome.nil? 如果 javahome[0] == ?" && javahome[-1] == ?" javahome = javahome[1..-2] 结尾 引发“JAVA_HOME 不是目录。” 除非 File.directory?(javahome) pt = Path.new
所以据我所知,nil 意味着没有找到 JAVA_HOME,或者我没有将它指向正确的路径或其他东西。
我已经尝试将 '\bin' 包含在路径的末尾,因为一些回复说这是必要的,但我得到了相同的结果。
有什么建议么?