0

我想为 Tomcat6 设置背书目录,以便它可以使用某些库而不是默认库。

因此,当我在独立应用程序中运行它时:

System.out.println(System.getProperty("java.endorsed.dirs"));

它打印:

/usr/lib/jvm/jdk1.6.0_45/jre/lib/endorsed

但是,当我在 Tomcat 中运行应用程序时,它会打印一个空行。

我试图修改tomcat6.conf, (当然是重新启动):

JAVA_OPTS=" -Djava.endorsed.dirs=/usr/share/tomcat6/endorsed -Djavax.sql.DataSource.Factory=org.apache.commons.dbcp.BasicDataSourceFactory -Djava.awt.headless=true -Xms1024m -Xmx1024m -XX :PermSize=1024m -XX:MaxPermSize=1024m"

但它似乎仍然不知道该属性。

那么,我怎样才能告诉 Tomcat 背书目录在哪里呢?

4

2 回答 2

0

对于 Tomcat 6,请参阅https://tomcat.apache.org/tomcat-6.0-doc/RUNNING.txt

在 Ubuntu 上,/etc/init.d/tomcat8 中的启动脚本将引用/etc/default/tomcat8中具有 JAVA_OPTS 的配置,您可以添加到它(它使用默认 env 配置来构建完整的 JAVA_OPTS,所以请确保您不会意外更换它们)。

于 2018-06-27T14:18:21.330 回答
0

似乎在tomcat6.conf中设置了这个选项:

-Djava.endorsed.dirs=/usr/share/tomcat6/endorsed

是不足够的。需要创建一个名为 JAVA_ENDORSED_DIRS 的变量。所以在tomcat6.conf中需要这两行:

JAVA_ENDORSED_DIRS="/usr/share/tomcat6/endorsed"
JAVA_OPTS="-Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS [-Djava....]"

我认为,没有很好的记录问题。

于 2018-06-28T13:10:49.877 回答