简体   繁体   English

在Tomcat6中设置认可的目录

[英]Set endorsed directory in Tomcat6

I want to set the endorsed directory for Tomcat6 so it can use certain libraries instead of the default ones. 我想为Tomcat6设置认可目录,以便它可以使用某些库而不是默认库。

So, when I run this in a standalone application: 因此,当我在独立应用程序中运行此命令时:

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

It prints: 它打印:

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

However, when I do it an application running in Tomcat, it prints a blank line. 但是,当我在Tomcat中运行的应用程序执行此操作时,它将打印空白行。

I have tried to modify tomcat6.conf , with this (and restarting, of course): 我试图用此方法修改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" 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“

But it still doesn't seem to know that property. 但它似乎仍然不知道该财产。

So, how can I tell Tomcat where the endorsed directory is located? 那么,如何告诉Tomcat认可目录位于何处?

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

On Ubuntu the startup script in /etc/init.d/tomcat8 will refer to a config in /etc/default/tomcat8 which has JAVA_OPTS, you can add to it (it uses default env config to build up a complete JAVA_OPTS, so make sure you don't accidentally replace them). 在Ubuntu上, / etc / init.d / tomcat8中的启动脚本将引用/ etc / default / tomcat8中具有JAVA_OPTS的配置,您可以对其进行添加(它使用默认的env config来构建完整的JAVA_OPTS,因此使确保您不会意外更换它们)。

It seems that setting this option in tomcat6.conf: 似乎在tomcat6.conf中设置此选项:

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

is not enough. 是不足够的。 It is required to create a variable called JAVA_ENDORSED_DIRS. 需要创建一个名为JAVA_ENDORSED_DIRS的变量。 So these two lines are needed in tomcat6.conf: 因此,tomcat6.conf中需要这两行:

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

Not really well documented issue, I think. 我认为这还没有很好地记录在案的问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM