简体   繁体   English

Google App Engine上的Rails上的jRuby的Java错误

[英]Java Errors with jRuby on Rails on Google App Engine

I followed all of the instructions so far from: http://code.google.com/p/appengine-jruby/wiki/RunningRails and http://gist.github.com/268192 我遵循了迄今为止的所有说明: http//code.google.com/p/appengine-jruby/wiki/RunningRailshttp://gist.github.com/268192

Currently, I'm just trying to get to hello world. 目前,我只是想去打招呼世界。 I'm getting these errors when I just run the dev_appserver.rb 我刚刚运行dev_appserver.rb时遇到这些错误

238:hello-world jwang392$ dev_appserver.rb . 

=> Booting DevAppServer 
=> Press Ctrl-C to shutdown server 
=> Generating configuration files 
2010-04-08 09:16:51.961 java[411:1707] [Java CocoaComponent 
compatibility mode]: Enabled 
2010-04-08 09:16:51.964 java[411:1707] [Java CocoaComponent 
compatibility mode]: Setting timeout for SWT to 0.100000 
Apr 8, 2010 7:17:05 PM 
com.google.appengine.tools.development.ApiProxyLocalImpl log 
SEVERE: [1270754225387000] javax.servlet.ServletContext log: Warning: 
error application could not be initialized 
org.jruby.rack.RackInitializationException: no such file to load -- 
time 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25:in `boot!' 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1:in `load' 
        from <script>:1 
        at org.jruby.rack.DefaultRackApplicationFactory 
$4.init(DefaultRackApplicationFactory.java:169) 
        at 
org.jruby.rack.DefaultRackApplicationFactory.newErrorApplication(DefaultRac kApplicationFactory.java: 
118) 
        at 
org.jruby.rack.DefaultRackApplicationFactory.init(DefaultRackApplicationFac tory.java: 
37) 
        at 
org.jruby.rack.SharedRackApplicationFactory.init(SharedRackApplicationFacto ry.java: 
26) 
        at 
org.jruby.rack.RackServletContextListener.contextInitialized(RackServletCon textListener.java: 
40) 
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java: 
530) 
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) 
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java: 
1218) 
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java: 
500) 
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 
448) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at org.mortbay.jetty.Server.doStart(Server.java:217) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java: 
188) 
        at 
com.google.appengine.tools.development.AbstractContainerService.startup(Abs tractContainerService.java: 
147) 
        at 
com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerI mpl.java: 
219) 
        at com.google.appengine.tools.development.DevAppServerMain 
$StartAction.apply(DevAppServerMain.java:162) 
        at com.google.appengine.tools.util.Parser 
$ParseResult.applyArgs(Parser.java:48) 
        at 
com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServer Main.java: 
113) 
        at 
com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMa in.java: 
89) 
Caused by: org.jruby.exceptions.RaiseException: no such file to load 
-- time 
        at (unknown).new(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at Kernel.require(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at JRuby::Rack::Booter.boot!(file:/Users/jwang392/hello-world/WEB-INF/ 
lib/jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10) 
        at (unknown).(unknown)(file:/Users/jwang392/hello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at (unknown).(unknown)(file:/Users/jwang392/Dhello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at Kernel.load(<script>:1) 
        at (unknown).(unknown)(:1) 
Apr 8, 2010 7:17:05 PM 
com.google.appengine.tools.development.ApiProxyLocalImpl log 
SEVERE: [1270754225913000] javax.servlet.ServletContext log: unable to 
create shared application instance 
org.jruby.rack.RackInitializationException: no such file to load -- 
time 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25:in `boot!' 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1:in `load' 
        from <script>:1 
        at org.jruby.rack.DefaultRackApplicationFactory 
$4.init(DefaultRackApplicationFactory.java:169) 
        at 
org.jruby.rack.DefaultRackApplicationFactory.getApplication(DefaultRackAppl icationFactory.java: 
51) 
        at 
org.jruby.rack.SharedRackApplicationFactory.init(SharedRackApplicationFacto ry.java: 
27) 
        at 
org.jruby.rack.RackServletContextListener.contextInitialized(RackServletCon textListener.java: 
40) 
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java: 
530) 
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) 
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java: 
1218) 
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java: 
500) 
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 
448) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at org.mortbay.jetty.Server.doStart(Server.java:217) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java: 
188) 
        at 
com.google.appengine.tools.development.AbstractContainerService.startup(Abs tractContainerService.java: 
147) 
        at 
com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerI mpl.java: 
219) 
        at com.google.appengine.tools.development.DevAppServerMain 
$StartAction.apply(DevAppServerMain.java:162) 
        at com.google.appengine.tools.util.Parser 
$ParseResult.applyArgs(Parser.java:48) 
        at 
com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServer Main.java: 
113) 
        at 
com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMa in.java: 
89) 
Caused by: org.jruby.exceptions.RaiseException: no such file to load 
-- time 
        at (unknown).new(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at Kernel.require(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at JRuby::Rack::Booter.boot!(file:/Users/jwang392/hello-world/WEB-INF/ 
lib/jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10) 
        at (unknown).(unknown)(file:/Users/jwang392/hello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at (unknown).(unknown)(file:/Users/jwang392/hello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at Kernel.load(<script>:1) 
        at (unknown).(unknown)(:1) 
Apr 8, 2010 7:17:05 PM 
com.google.appengine.tools.development.ApiProxyLocalImpl log 
SEVERE: [1270754225915000] javax.servlet.ServletContext log: Error: 
application initialization failed 
org.jruby.rack.RackInitializationException: unable to create shared 
application instance 
        at 
org.jruby.rack.SharedRackApplicationFactory.init(SharedRackApplicationFacto ry.java: 
39) 
        at 
org.jruby.rack.RackServletContextListener.contextInitialized(RackServletCon textListener.java: 
40) 
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java: 
530) 
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:135) 
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java: 
1218) 
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java: 
500) 
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 
448) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
117) 
        at org.mortbay.jetty.Server.doStart(Server.java:217) 
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java: 
40) 
        at 
com.google.appengine.tools.development.JettyContainerService.startContainer (JettyContainerService.java: 
188) 
        at 
com.google.appengine.tools.development.AbstractContainerService.startup(Abs tractContainerService.java: 
147) 
        at 
com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerI mpl.java: 
219) 
        at com.google.appengine.tools.development.DevAppServerMain 
$StartAction.apply(DevAppServerMain.java:162) 
        at com.google.appengine.tools.util.Parser 
$ParseResult.applyArgs(Parser.java:48) 
        at 
com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServer Main.java: 
113) 
        at 
com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMa in.java: 
89) 
Caused by: org.jruby.rack.RackInitializationException: no such file to 
load -- time 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25:in `boot!' 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10 
        from file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1:in `load' 
        from <script>:1 
        at org.jruby.rack.DefaultRackApplicationFactory 
$4.init(DefaultRackApplicationFactory.java:169) 
        at 
org.jruby.rack.DefaultRackApplicationFactory.getApplication(DefaultRackAppl icationFactory.java: 
51) 
        at 
org.jruby.rack.SharedRackApplicationFactory.init(SharedRackApplicationFacto ry.java: 
27) 
        ... 19 more 
Caused by: org.jruby.exceptions.RaiseException: no such file to load 
-- time 
        at (unknown).new(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at Kernel.require(file:/Users/jwang392/hello-world/WEB-INF/lib/jruby- 
rack-0.9.6.jar!/jruby/rack/booter.rb:25) 
        at JRuby::Rack::Booter.boot!(file:/Users/jwang392/hello-world/WEB-INF/ 
lib/jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:10) 
        at (unknown).(unknown)(file:/Users/jwang392/hello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at (unknown).(unknown)(file:/Users/jwang392/hello-world/WEB-INF/lib/ 
jruby-rack-0.9.6.jar!/jruby/rack/boot/rack.rb:1) 
        at Kernel.load(<script>:1) 
        at (unknown).(unknown)(:1) 
The server is running at http://localhost:8080/ 

I'm at a loss at what step I may have missed. 我可能错过了哪一步,我感到很茫然。 I checked my ruby version (1.8.7) and rails version (2.3.5), gem version (1.3.6) and google-appengine-0.0.10.1 我检查了我的ruby版本(1.8.7)和rails版本(2.3.5),gem版本(1.3.6)和google-appengine-0.0.10.1

ran: 跑:

sudo gem install google-appengine sudo gem install google-appengine

curl -O http://appengine-jruby.googlecode.com/hg/demos/rails2/rails2_appengine.rb curl -O http://appengine-jruby.googlecode.com/hg/demos/rails2/rails2_appengine.rb

ruby rails2_appengine.rb ruby rails2_appengine.rb

sudo gem install rails_dm_datastore sudo gem install rails_dm_datastore

sudo gem install activerecord-nulldb-adapter sudo gem install activerecord-nulldb-adapter

put this in my config.ru file: 把它放在我的config.ru文件中:

run lambda { |env| 运行lambda {| env | Rack::Response.new('Hello World!').finish } Rack :: Response.new('Hello World!')。完成}

and finally ran $ dev_appserver.rb . 最后运行$ dev_appserver.rb。

Ok. 好。 I got some help over at the Google Group from John Woodell. 我从John Woodell那里获得了谷歌集团的帮助。

For Rails, you should follow the instructions on the gist For a hello world app do this... 对于Rails,你应该按照要点上的说明进行一个hello world应用程序执行此操作...

$ appcfg.rb generate_app hello-world  
$dev_appserver.rb hello-world

I'm at a loss at what step I may have missed. 我可能错过了哪一步,我感到很茫然。 I checked my ruby version (1.8.7) and rails version (2.3.5), gem version (1.3.6) and google-appengine-0.0.10.1 ran 我检查了我的ruby版本(1.8.7)和rails版本(2.3.5),gem版本(1.3.6)和google-appengine-0.0.10.1运行

sudo gem install google-appengine
curl -O http://appengine-jruby.googlecode.com/hg/demos/rails2/rails2_appengine.rb
ruby rails2_appengine.rb
sudo gem install rails_dm_datastore
sudo gem install activerecord-nulldb-adapter 

put this in my config.ru file: 把它放在我的config.ru文件中:

run lambda { |env|Rack::Response.new('Hello World!').finish }  

and finally ran 然后跑了
$ dev_appserver.rb . $ dev_appserver.rb。

Ok. 好。 I followed everything and still ran into the problem. 我遵循了一切,仍然遇到了问题。 Figured out what's going on. 弄清楚发生了什么。 I started creating project folders and ran into unix fun-problem-land of it not liking directories with spaces in the names. 我开始创建项目文件夹并遇到unix fun-problem-land,它不喜欢名字中带空格的目录。 once I got rid of the spaces, everything ran fine. 一旦我摆脱了空间,一切都运行良好。 Boy, I feel real dumb right about now. 男孩,我现在感觉真的很蠢。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM