2010-12-20 3 views
1

J'ai quelques problèmes pour emballer mon application JRuby avec la fauvette et l'exécuter.L'exécutable Warbler ne démarre pas

J'ai créé une application sqlite3 simple avec un modèle qui fonctionne très bien lors de l'exécution via jruby -S rails s.

Cependant, si j'essaie de l'emballer avec jruby -S warble executable war les plantages-serveur Winstone emballé avec

[Winstone 2010/12/20 10:33:48] - Beginning extraction from war file 
[Winstone 2010/12/20 10:33:50] - WARNING: The Servlet 2.4/2.5 spec XSD was unavailable inside the winstone classpath. Will be retrieved from the web if required (slow) 
[Winstone 2010/12/20 10:33:50] - No webapp classes folder found - C:\Temp\winstone908137348044208817webroot\sqlite-test.war\WEB-INF\classes 
[webapp 2010/12/20 10:33:51] - Warning: error application could not be initialized org.jruby.rack.RackInitializationException: no such file to load -- builtin/core_ext/symbol 

    at org.jruby.rack.DefaultRackApplicationFactory.newRuntime(DefaultRackApplicationFactory.java:85) 
    at org.jruby.rack.DefaultRackApplicationFactory.createApplication(DefaultRackApplicationFactory.java:177) 
    at org.jruby.rack.DefaultRackApplicationFactory.newErrorApplication(DefaultRackApplicationFactory.java:127) 
    at org.jruby.rack.DefaultRackApplicationFactory.init(DefaultRackApplicationFactory.java:45) 
    at org.jruby.rack.PoolingRackApplicationFactory.init(PoolingRackApplicationFactory.java:50) 
    at org.jruby.rack.RackServletContextListener.contextInitialized(RackServletContextListener.java:40) 
    at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:889) 
    at winstone.HostConfiguration.initWebApp(HostConfiguration.java:131) 
    at winstone.HostConfiguration.<init>(HostConfiguration.java:73) 
    at winstone.HostGroup.initHost(HostGroup.java:85) 
    at winstone.HostGroup.<init>(HostGroup.java:45) 
    at winstone.Launcher.<init>(Launcher.java:196) 
    at winstone.Launcher.main(Launcher.java:391) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at Main.launchWinstone(Main.java:67) 
    at Main.start(Main.java:72) 
    at Main.main(Main.java:97) 
Caused by: org.jruby.exceptions.RaiseException: no such file to load -- builtin/core_ext/symbol 
    at (unknown).new(:1) 
    at (unknown).(unknown)(:1) 

D'où vient, et comment puis-je obtenir cette course?

Répondre

1

Ceci est dû à un bogue dans JRuby 1.5.5 et les versions antérieures qui affectent l'exécution du fichier exécutable sous Windows et dans les chemins contenant des espaces. Voir JRUBY-4774 ou WARBLER-15.

Essayez de mettre à jour JRuby vers la version 1.5.6 (gem update jruby-jars), reconstruisez le fichier war et réessayez.

+0

Merci beaucoup, j'ai mis à jour vers JRuby 1.5.6 et jruby-rack 1.0.4 et cette erreur semble corrigée. Bien que l'exécution de la guerre à partir d'un chemin contenant des espaces ne fonctionne toujours pas, elle échoue avec "Le fichier de guerre fourni est indisponible ou non valide". – Jan