[英]How to include all .jar files in directory in Jetty 9.1.1
我们正在从Jetty 9.0.6升级到9.1.1的过程中,正在通过配置更改来完成过渡。 我们的应用程序部署了许多Web上下文,所有这些上下文都使用位于外部目录(即,在Jetty部署之外)中的一组通用库(apache commons,日志记录,特定的db等)。
在Jetty 9.0.6中,我们在启动时加入了一个参数,该参数引用了这些公共库的顶级目录:
java -jar .\start.jar lib=M:\common\lib
在转换到Jetty 9.1.1的过程中,标志已更改为--lib 。 使用--list-configs,我们已验证该目录位于start.jar创建的类路径中。 但是,在启动应用程序时,我们会遇到许多ClassNotFound问题。 所有这些错误都是针对位于公共库中的jar文件中包含的类的。
这使我相信该标志是针对非Jared类或特定jar文件的列表。 我们也尝试使用M:\\ common \\ lib *和m:\\ common \\ lib * .jar无效。
我搜索了类似问题的任何报告,但没有发现任何问题。 有谁知道如何在启动时将目录中的所有.jar文件传递给Jetty 9.1.1?
我在以下网址的Jetty网站上报告了此问题:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=428097
从那里将继续跟踪有关配置或问题的更多信息。
更新: -此问题已解决,并已合并到Jetty 9.2代码库中。 对于版本9.1.5,我们创建了一个自定义模块,该模块指定目录中的所有.jar文件,并且工作正常(尽管不理想)。
commonlib.mod文件如下所示:
#
# commonlib Module
#
[lib]
M:\commonlib\commons-codec-1.4.jar
M:\commonlib\commons-fileupload-1.2.1.jar
M:\commonlib\commons-io-2.3.jar
M:\commonlib\commons-logging-1.1.1.jar
M:\commonlib\commons-net-2.2.jar
M:\commonlib\commons-pool-1.6.jar
使用命令行将commonlib模块添加到start.ini文件中(尽管手动编辑也可以)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.