2015-06-12 135 views
1

我已經看到這個問題問了幾次,但沒有任何回覆對我有用。我試過RJB的幾個版本,有幾個JRE事versions..No我怎麼努力,試圖使用RJB寶石,我得到以下錯誤時:Ruby RJB無法創建Java虛擬機錯誤

DL is deprecated, please use Fiddle 
C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/bind-it-0.2.7/lib/bind-it/jar_loader.rb:45:in `load': can't create Java VM (RuntimeError) 

我有JAVA_HOME在我的道路。我只是使用簡單的代碼來測試rjb,因爲我真的只需要這個工作,所以stanford打開nlp gem將爲我工作。

任何解釋?可能會幫助其他一些可憐的靈魂在那裏......我在Windows上運行,是否可以幫助

UPDATE:試圖在以下命令行來解決

ruby -d -rubygems -rrjb -e 'Rjb::load' 
Exception `LoadError' at c:/RailsInstaller/Ruby2.1.0/lib/ruby/site_ruby/2.1.0/rubygems.rb:1203 - cannot load such file -- rubygems/defaults/ruby 
Exception `LoadError' at c:/RailsInstaller/Ruby2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55 - cannot load such file -- rjb 
Exception `Fiddle::DLError' at c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/fiddle.rb:46 - No such file or directory 
DL is deprecated, please use Fiddle 
Exception `DL::DLError' at -e:1 - No such file or directory 
Exception `Fiddle::DLError' at c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/fiddle.rb:46 - No such file or directory 
Exception `DL::DLError' at -e:1 - No such file or directory 
Exception `RuntimeError' at -e:1 - can't create Java VM 
-e:1:in `load': can't create Java VM (RuntimeError) 
     from -e:1:in `<main>' 

這是否意味着有一個與路徑錯誤或JAVA_HOME?如果是這樣,我將如何正確設置?

回答

0

因此,我終於遇到了一個解決方案。 rjb只有在java和ruby都是32位或64位時才能工作。不同的版本將導致VM錯誤。

解決:你是在Java javacjava -v的終端

  • 查找版本在終端
  • 運行ruby -v紅寶石

    1. 查找版本查一查,如果版本是64位或32位
    2. 如果不同,我認爲它更容易更改我的jdk版本 - 卸載jdk
    3. 下載/安裝x86(32位)版本的jdk
    4. 確保JAVA_HOME環境變量設置爲JDK的位置(可能需要重新啓動您作出生效

    Boom-希望這適用於所有的人,以及任何變化!