Как обновить команду gem в JRuby? - PullRequest
4 голосов
/ 21 июля 2011

Как обновить версию gem, которую использует JRuby?

JRuby использует gem (1.5.1), и мы хотели бы обновить ее до 1.8.7.Мы хотим, чтобы гемы были установлены в Ruby / gems

Мы запускаем:

bin/jruby gem install rubygems-update
Fetching: rubygems-update-1.8.5.gem (100%)
Successfully installed rubygems-update-1.8.5
1 gem installed

bin/jruby gem install --system
ERROR:  While executing gem ... (OptionParser::InvalidOption)
invalid option: --system

(обновление также не работает)

bin/jruby gem update --system
Updating RubyGems
Updating RubyGems to 1.8.5
Installing RubyGems 1.8.5
ERROR:  While executing gem ... (Errno::EBADF)
Bad file descriptor - Bad file descriptor

Как установить /обновление gem (1.8.5) нужно сделать?

Конфигурация:

  • с использованием Maven для установки JRuby.
  • JRuby установлен на: ~ / .m2 / репозиторий / org / jruby / jruby-complete / 1.6.3 / jruby-complete-1.6.3.jar
  • jruby-complete-1.6.3.jar НЕ взорван.
  • jruby-complete-1.6.3.jar встроил в него команду «gem» (1.5.1).
  • команда bin/jruby, которая выглядит следующим образом:

(bin / jruby)

export jruby_build=1.6.3
export GEM_HOME= ~/tools/ruby/gems
java -jar ~/.m2/repository/org/jruby/jruby-complete/${jruby_build}/jruby-complete-${jruby_build}.jar -S $*
  • Переменные среды:

(env)

GEM_HOME=~/tools/ruby/gems
GEM_PATH=~/tools/ruby/gems

Ответы [ 2 ]

4 голосов
/ 23 июля 2011

Если вы можете заставить работать update_rubygems, это нормально, но учтите, что это может привести к тому, что некоторые специфичные для JRuby расширения больше не будут работать (например, интеграция maven).Мы поставляем RubyGems с выпусками JRuby, чтобы обеспечить совместимость наших расширений с версией, которую мы поставляем.

0 голосов
/ 21 июля 2011

Установив rubygems-update, вам необходимо выполнить команду:

jruby -S update_rubygems

С этого момента вы сможете использовать обычную команду, т.е.

jruby -S gem update --system
...