sandro/specjour

cucumber or akephalos error?

pierreozoux opened this issue · 2 comments

(i'm writing you here my progress on this for reference..)

So I had this bug at the beginning :

LoadError: load error: pathname -- java.lang.UnsatisfiedLinkError: failed to load shim library, error: dlopen(/private/tmp/seedrs/file:/usr/local/lib/ruby/gems/1.9.1/gems/jruby-jars-1.6.5.1/lib/jruby-stdlib-1.6.5.1.jar!/META-INF/jruby.home/META-INF/jruby.homeDarwin/libjruby-cext.jnilib, 10): image not found
  require at org/jruby/RubyKernel.java:1047
  require at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36
   (root) at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/pathname.rb:14
  require at org/jruby/RubyKernel.java:1047
  require at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/pathname.rb:36
   (root) at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/akephalos2-2.1.2/lib/akephalos/server.rb:1

I tried this https://github.com/jruby/jruby/wiki/Troubleshooting
And now I have :

[1] Running /tmp/seedrs/features/admin/admin.feature
LoadError: load error: pathname -- java.lang.UnsatisfiedLinkError: no jruby-cext in java.library.path
  require at org/jruby/RubyKernel.java:1047
  require at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36
   (root) at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/pathname.rb:14
  require at org/jruby/RubyKernel.java:1047
  require at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/1.9.1/pathname.rb:36
   (root) at /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/akephalos2-2.1.2/lib/akephalos/server.rb:1

I'm still investigating.

(i wanted to comment your last comment, but I preferred to open an issue, for others, maybe, it's not a specjour bug, still don't know..)

Looks like JRuby can't require 'pathname'. I don't work with JRuby often, but you may need to debug JRuby's $LOAD_PATH global.

I'm not sure if akephalos is still actively developed. I've been using capybara-webkit for headless browser testing. If your cucumber tests already use a capybara driver, it should be easy to swap akephalos with capybara-webkit.

I made an akephalos2 patch for me : https://github.com/pierreozoux/akephalos2/tree/specjour_patch

commenting require "pathname"...it was not needed...