不能将Java库放在.war之外

时间:2015-06-15 12:48:52

标签: java jetty

有没有办法在Jetty服务器上访问.war文件之外的java库?

我尝试了几件事,比如扩大战争,但每次我都失败了,因为服务器每次都没有启动。

目前我构建了一个战争并从中排除了一些JAR,然后我将JAR放在我的Jetty Distribution中的lib文件夹中。但出于某种原因,它不是从该文件夹中查找库。我正在使用Jetty Version 9.

如何正确配置才能正常工作?

1 个答案:

答案 0 :(得分:0)

jetty发行版中的lib目录不会自动添加到服务器的类路径中。 start.jar命令根据启用的模块构建类路径。您可以使用以下命令查看构造的类路径:

java -jar $JETTY_HOME/start.jar --list-config

有一个模块可以将lib / ext中发现的任何jar添加到类路径中,因此您只需将--module = ext添加到命令行或运行命令,如

java -jar $JETTY_HOME/start.jar --add-to-startd=ext

然后将lib / ext中的任何jar放在服务器类路径上。

接下来的问题是它们对webapp是可见的......如果它们不在java或javax或org.eclipse.jetty包中,那么它们通常默认是可见的。如果要添加隐藏类,则需要调整上下文服务器和系统类配置。