2014-05-09 163 views
0

我試圖將Neo4j圖形數據庫添加到我的rails應用程序。我已經安裝了neo4j寶石。 問題是,當我運行包(RVM與設置爲JRuby中)我得到這個消息對於那些無法使用JRuby中其他寶石(mini_magick要具體):Ruby on Rails,JRuby,Neo4j集成

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 
/Users/Felan/.rvm/rubies/jruby-1.7.10/bin/jruby extconf.rb 
NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS. 

我無法找出如何將選項傳遞給jruby,我無法刪除不兼容的寶石。 我該如何解決這個問題?任何人都可以指出一篇關於如何爲現有的Rails 4項目設置Neo4j的好文章?

+0

難道你嘗試做什麼錯誤消息建議? '通過-Xcext.enabled = true爲JRuby或設置JRUBY_OPTS.' –

+0

可能重複的[如何在JRuby中啓用C擴展支持?](http://stackoverflow.com/questions/15795942/how-to-enable-c -extension-support-in-jruby) –

+0

你有沒有考慮嘗試使用Pacer? https://github.com/pangloss/pacer ...這是一個基於JRuby的圖形數據庫遍歷引擎,功能強大。 – BtySgtMajor

回答

0

首先這個問題有點「不好」問 - 你需要爲JRuby構建的neo4j gem,但問題的要點是你當前的gem不兼容性,我們知道的很少。

我強烈建議不要使用-Xcext.enabled=true使用JRuby,而是想建議檢查你的寶石(先從的Gemfile)。請確保使用原生C擴展標記聲明的寶石,這些擴展不提供JRuby本地擴展選項,例如僅用於MRI。

gem 'mysql2', :platform => :mri 

一定要明智地審查您所提供的錯誤是一般性之一,絕對不是mini_magick因爲這是寶石純Ruby,應該很好地工作在所有紅寶石引起...