2012-09-22 34 views
2

我有一個帶有C擴展和java擴展的gem,它通過rbenv在JRuby中安裝正常,但無法通過RVM安裝在JRuby中。 gemspec and project are on Github。我試圖在gemspec中明確列出文件,當平臺是Java時,不包括extconf.rb和* .c文件,但仍然無法在RVM的JRuby上安裝gem。Gem定義:忽略JRuby中的extconf.rb

您可以嘗試使用gem install pg_array_parser --pre進行安裝以查看安裝失敗,並顯示master中的當前gemspec。我不知道我還有什麼可以嘗試在這一點上。

回答

2

gemspec文件中使用if RUBY_PLATFORM =~ /java/是不夠的,因爲這將用於您在打包寶石時使用的ruby實現。

從你的問題來看,你是否正在這樣做,但你必須使用rvm和rake-compiler爲你定位的不同平臺建立你的寶石。使用MRI,運行rake native gem;與JRuby,rake java gem - 請參閱rake-compiler documentation以獲取更多詳細信息,或查看其他執行相同操作的項目,例如redclothgherkin

+0

謝謝。在用java構建gem之後,再將它推到ruby寶石上,我可以正確安裝gem。 –

+0

@DanMcClain我也可以確認它在這裏安裝。好東西! (= –