2009-04-25 38 views

回答

3

如果你設置了GEM_HOME,你可以分享你的寶石安裝。

4

您需要爲每個不同的紅寶石安裝安裝gems你有。

1

一些寶石以特定平臺爲目標,例如, Mongrel(有一個MRI和一個JRuby)。另外,JRuby不能使用原生擴展(即C代碼)的gem,除非他們使用FFI(現在大多數還沒有)。

我個人有單獨的寶石回購核磁共振和JRuby。當試圖追蹤問題時,一點點額外的麻煩值得您放心。

這是很容易看到每個回購已經安裝了什麼:

jruby -S gem list --local 

gem list --local 

你甚至可以寫一個Ruby腳本一個寶石列表同步到對方,但你」 d必須小心平臺具體的寶石....

1

我創建我的寶石,jimmy_jukebox,但我的寶石,使我的工作與兩個這個問題。

首先,JRuby的不處理fork...exec(甚至是不正確的回覆Process.respond_to?(:fork)),所以我不得不rescue NotImplementedError和使用Spoon.spawnp代替。

然後我創建了(在我的gem的/ bin目錄中)配對可執行文件 - play_jukeboxjplay_jukebox;和load_jukeboxjload_jukebox - 每個都有正確的shebang行(/usr/bin/env ruby/usr/bin/env jruby)。

我很想知道更好的方法。但我寧願在一個寶石中處理所有東西,而不是維護和分配多個寶石。