0

MinaでJRubyにアプリをデプロイしようとしているのですが、1つのgemがインストールされず、そもそもインストールされるべきではない...

gem はunf_extMechanize の依存関係です。サーバーに SSH 接続して をインストールしようとするとMechanize、問題なくunfインストールされ、結果としてのみインストールされ、 はインストールされませんunf_ext

エラー:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. 

       /home/linkrecover/.rbenv/versions/jruby-1.7.13/bin/jruby extconf.rb  
   NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS. 

      (root) at /home/linkrecover/.rbenv/versions/jruby-1.7.13/lib/ruby/shared/mkmf.rb:8 
     require at org/jruby/RubyKernel.java:1065 
      (root) at /home/linkrecover/.rbenv/versions/jruby-1.7.13/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1 
      (root) at extconf.rb:1 


   Gem files will remain installed in /var/www/lr/tmp/build-14062262733806/vendor/bundle/jruby/1.9/gems/unf_ext-0.0.6 for inspection. 
   Results logged to /var/www/lr/tmp/build-14062262733806/vendor/bundle/jruby/1.9/gems/unf_ext-0.0.6/ext/unf_ext/gem_make.out 
   An error occurred while installing unf_ext (0.0.6), and Bundler cannot continue. 
   Make sure that `gem install unf_ext -v '0.0.6'` succeeds before bundling. 

私の Gemfile: https://gist.github.com/davidhq/09d84bc79683b9d3332e

では、Mina を実行するときにバンドラーにすべてを適切にインストールさせるにはどうすればよいでしょうか?

4

2 に答える 2

0

Gemfile.lock私は開発に MRI を使用しているため、JRuby への依存関係を把握していませんでした。ローカルで JRuby に切り替え、実行bundle installして正しい情報を生成しGemfile.lock、コミットしました...今ではすべて正常にインストールされています。

于 2014-07-25T11:46:10.720 に答える
0

宣言された gem ( Gemfile.lockunf_extがどれかを示す必要があります) の一部は、ネイティブ C 拡張を使用する gem に依存しています。JRuby では、何らかの方法でその gem を回避する必要があります (たとえば、プラットフォーム: :mriで他の人と同じように)。詳細は、問題のある gem と必要な量によって異なります。たとえば、開発のみの場合は、グループ :developmentに移動するだけです。bundle --without development

于 2014-07-25T10:32:39.847 に答える