2010-04-07 114 views
0

我一直在阅读莺的源代码,我无法弄清楚jruby-jar和jruby-rack jar是如何在servlet classpath上结束的?应该如何使用warbler将jruby-jar和jruby-rack添加到类路径中?

似乎莺将它们复制到web-inf/gems/gems/<gemname>/lib/<jarname>.jar但它们不在类路径中。

我猜如果我把它们放在我的ruby应用程序的lib /文件夹中,它们会被复制到web-inf/lib并且一切都会好起来的,不过,看起来有点奇怪,战争档案,这是我的意思?

回答

1

它们应该被复制到WEB-INF/lib/.jar中。定位的罐子中的代码是在这里:

http://github.com/nicksieger/warbler/blob/master/lib/warbler/config.rb#L216-220

而且代码,把它们拷贝到WEB-INF/lib目录是在这里:

http://github.com/nicksieger/warbler/blob/master/lib/warbler/war.rb#L68-70

如果你也看见一个东西,那么这是一个错误。另外,您不必在JRuby jar文件gem中显式声明依赖关系。

+0

你是对的!我发现我的错误,我从一个GHS部署的例子复制了warble.rb文件,最后一行是清除java_libs,因此lib /中没有libs :-)感谢您的帮助! 破碎的例子在这里http://gist.github.com/91801#file_warble.rb – 2010-04-07 11:46:51

相关问题