Ruby on rails 在jruby/osx上运行使用用户gem的rails应用程序时发生异常
当我运行服务器时,我试图在我的rails应用程序中使用patron,但当我运行rails控制台时,我没有得到任何异常,我甚至能够在我的Ruby类中使用使用patron的方法。你知道问题是什么吗Ruby on rails 在jruby/osx上运行使用用户gem的rails应用程序时发生异常,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,当我运行服务器时,我试图在我的rails应用程序中使用patron,但当我运行rails控制台时,我没有得到任何异常,我甚至能够在我的Ruby类中使用使用patron的方法。你知道问题是什么吗 /Users/<user>/.rvm/rubies/jruby-1.6.2/bin/jruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /Users/<user>/rails/share-app/web/
/Users/<user>/.rvm/rubies/jruby-1.6.2/bin/jruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /Users/<user>/rails/share-app/web/share-ui/script/rails server mongrel -b 0.0.0.0 -p 3000 -e development
LoadError: load error: patron/session_ext -- java.lang.UnsatisfiedLinkError: dlopen(/Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/patron-0.4.16/lib/patron/session_ext.bundle, 9): no suitable image found. Did find:
/Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/patron-0.4.16/lib/patron/session_ext.bundle: mach-o, but wrong architecture
require at org/jruby/RubyKernel.java:1038
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/polyglot-0.3.2/lib/polyglot.rb:63
(root) at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/patron-0.4.16/lib/patron/session.rb:30
require at org/jruby/RubyKernel.java:1038
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/polyglot-0.3.2/lib/polyglot.rb:63
(root) at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/patron-0.4.16/lib/patron/session.rb:30
require at org/jruby/RubyKernel.java:1038
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/patron-0.4.16/lib/patron.rb:68
each at org/jruby/RubyArray.java:1602
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/bundler-1.0.18/lib/bundler/runtime.rb:66
each at org/jruby/RubyArray.java:1602
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/bundler-1.0.18/lib/bundler/runtime.rb:55
require at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/bundler-1.0.18/lib/bundler.rb:120
(root) at /Users/<user>/rails/share-app/web/share-ui/config/application.rb:19
require at org/jruby/RubyKernel.java:1038
(root) at /Users/<user>/rails/share-app/web/share-ui/config/application.rb:28
tap at org/jruby/RubyKernel.java:1770
(root) at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/railties-3.0.7/lib/rails/commands.rb:27
require at org/jruby/RubyKernel.java:1038
(root) at /Users/<user>/.rvm/gems/jruby-1.6.2@share/gems/railties-3.0.7/lib/rails/commands.rb:6
load at org/jruby/RubyKernel.java:1063
(root) at -e:1
/Users/.rvm/rubies/jruby-1.6.2/bin/jruby-e$stdout.sync=true$stderr.sync=true;加载($0=ARGV.shift)/Users//rails/share app/web/share ui/script/rails server mongrel-b0.0.0-p3000-e开发
加载错误:加载错误:用户/session\u ext--java.lang.unsatifiedlinkerror:dlopen(/Users/.rvm/gems/jruby-1.6)。2@share/gems/patron-0.4.16/lib/patron/session_ext.bundle,9):未找到合适的图像。确实发现:
/用户//.rvm/gems/jruby-1.6。2@share/gems/patron-0.4.16/lib/patron/session_ext.bundle:mach-o,但架构错误
要求访问org/jruby/RubyKernel.java:1038
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/polyglot-0.3.2/lib/polyglot.rb:63
(root)位于/Users/.rvm/gems/jruby-1.6。2@share/gems/patron-0.4.16/lib/patron/session.rb:30
要求访问org/jruby/RubyKernel.java:1038
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/polyglot-0.3.2/lib/polyglot.rb:63
(root)位于/Users/.rvm/gems/jruby-1.6。2@share/gems/patron-0.4.16/lib/patron/session.rb:30
要求访问org/jruby/RubyKernel.java:1038
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/patron-0.4.16/lib/patron.rb:68
分别位于org/jruby/RubyArray.java:1602
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/bundler-1.0.18/lib/bundler/runtime.rb:66
分别位于org/jruby/RubyArray.java:1602
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/bundler-1.0.18/lib/bundler/runtime.rb:55
需要at/Users/.rvm/gems/jruby-1.6。2@share/gems/bundler-1.0.18/lib/bundler.rb:120
(root)位于/Users//rails/share-app/web/share-ui/config/application.rb:19
要求访问org/jruby/RubyKernel.java:1038
(root)位于/Users//rails/share-app/web/share-ui/config/application.rb:28
点击org/jruby/RubyKernel.java:1770
(root)位于/Users/.rvm/gems/jruby-1.6。2@share/gems/railties-3.0.7/lib/rails/commands.rb:27
要求访问org/jruby/RubyKernel.java:1038
(root)位于/Users/.rvm/gems/jruby-1.6。2@share/gems/railties-3.0.7/lib/rails/commands.rb:6
加载到org/jruby/RubyKernel.java:1063
(根)at-e:1
您得到修复了吗。我还面临着关于jruby 1.6.2
的patron
的问题,我并没有真正考虑到这一点,但这显然与环境有关。因为它抱怨它找到了动态链接库,但体系结构是错误的,所以您可以尝试将ARCHFLAGS设置为适当的值,看看这是否有帮助。我知道了:)它的ruby依赖用户与jRuby不兼容。