Cucumber + Akephalos "UNIXServer is required"
I setup a rails 2.3 project with cucumber and it works fine. Now i wanted to run javascript tests and i set it up using Akephalos. Now the funny thing. The tests run on my collegues machines just fine.
We are using RVM + ruby 1.8.7 + gemsets + bundler. Gems are all installed but whenever i start a specific feature on my machine like this:
bundle exec cucumber featues/myfeature.feature
It says:
LoadError: UNIXServer is required
(root) at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/unix.rb:5
require at org/jruby/RubyKernel.java:1037
auto_load at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/unix.rb:826
open_server at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:794
initialize at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:1377
start_service at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:1665
start! at /Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/akephalos-0.2.4/lib/akephalos/server.rb:29
(root) at -e:1
My machine is a 2011 MacBook Pro i7 quadcore with snow leopard, homebrew, rvm, ruby, rvm infp says:
ruby-1.8.7-p334@betterplace:
system:
uname: "Darwin ChrisBookPro.local 10.7.3 Darwin Kernel Version 10.7.3: Sun Mar 6 13:37:56 PST 2011; root:xnu-1504.14.2~1/RELEASE_X86_64 x86_64"
bash: "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
zsh: "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"
rvm:
version: "rvm 1.2.9 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]"
ruby:
interpreter: "ruby"
version: "1.8.7"
date: "2011-02-18"
platform: "i686-darwin10.7.3"
patchlevel: "2011-02-18 patchlevel 334"
full_version: "ruby 1.8.7 (2011-02-18 patchlevel 334) [i686-darwin10.7.3]"
homes:
gem: "/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace"
ruby: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334"
binaries:
ruby: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334/bin/ruby"
irb: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334/bin/irb"
gem: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334/bin/gem"
rake: "/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/bin/rake"
environment:
PATH: "/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/bin:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@global/开发者_如何学编程bin:/Users/christoph/.rvm/rubies/ruby-1.8.7-p334/bin:/Users/christoph/.rvm/bin::/Users/christoph/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/sbin:/opt/local/share/java/jruby/bin:/Developer/SDKs/android-sdk-mac_x86/tools"
GEM_HOME: "/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace"
GEM_PATH: "/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@global"
MY_RUBY_HOME: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334"
IRBRC: "/Users/christoph/.rvm/rubies/ruby-1.8.7-p334/.irbrc"
RUBYOPT: ""
gemset: "betterplace"
Unpacking the jruby-jar reveals: the drb is included. Manually requiring works to. But i can't figure out, what the problem is. With further investigation i was able to figure out, what the actual java commandline is, that is supposed to bring the akephalos server up:
java -Xmx128M -cp /Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-core-1.6.0.jar:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar org.jruby.Main -I vendor:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/akephalos-0.2.4/lib:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/akephalos-0.2.4/src -r akephalos/server -e 'Akephalos::Server.start!("/tmp/akephalos.1586.sock")'
The error stays the same:
LoadError: UNIXServer is required
(root) at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/unix.rb:5
require at org/jruby/RubyKernel.java:1037
auto_load at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/unix.rb:826
open_server at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:794
initialize at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:1377
start_service at file:/Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/jruby-jars-1.6.0/lib/jruby-stdlib-1.6.0.jar!/META-INF/jruby.home/lib/ruby/1.8/drb/drb.rb:1665
start! at /Users/christoph/.rvm/gems/ruby-1.8.7-p334@betterplace/gems/akephalos-0.2.4/lib/akephalos/server.rb:29
(root) at -e:1
Any kind of help is highly appreciated.
Cheers, Christoph
精彩评论