2012-09-07 37 views
0

我移植一個Ruby on Rails的3.2.8應用程序從MRI 1.9.3 JRuby中1.6.7美津濃服務器拋出一個ClassNotFoundException:在啓動時

JRuby的opensslService Rails應用程序本身的JRuby友好,我也有跳過一些箍環以獲取twitter-boot與JRuby搭配使用。我的所有測試都通過了,應用程序將在Webrick(通過bundle exec rails server)下運行。

當我嘗試mizuno下運行,我得到這個奇怪的錯誤:

bundle exec mizuno -d 
java.lang.ClassNotFoundException: Jruby-opensslService 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at org.jruby.util.JRubyClassLoader.findClass(JRubyClassLoader.java:86) 
<a few thousands more lines> 

(如果你認爲Java是壞,JRuby的真正知道如何吐一些堆棧。)

我相信你所想的一樣我是,但的確Gemfile中包括JRuby的OpenSSL的

bundle list | grep openssl 
    * jruby-openssl (0.7.7) 

我JRuby運行時,與正o使用JRUBY_OPTS:

jruby -v 
jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-05-01 26e08ba) (OpenJDK 64-Bit Server VM 1.7.0_03) [linux-amd64-java] 

任何人都有智慧珍珠?

回答

0

我已經能夠獲得美津濃使用rackup工作:

bundle exec rackup -s mizuno