有两个环境变量 – CATALINA_OPTS和JAVA_OPTS – 它们都用于Tomcat的catalina.sh启动和关闭脚本中。它们在该文件中的注释中描述为:
[JAVA_OPTS]: (optional) Java runtime options used when the “start”, “stop” or “run”
command is executed
和
[CATALINA_OPTS]: (optional) Java runtime options
used when the “start” or “run” command is executed
那么为什么有两个不同的变量?有什么区别?
首先,在EITHER变量中指定的任何东西都被传递给启动Tomcat的命令 – “start”或“run”命令,但只有在JAVA_OPTS中设置的值才被传递给“stop”命令。这可能不会对Tomcat在实践中的运行方式产生任何影响,因为它只影响运行结束,而不是开始。
第二个区别是更微妙。其他应用程序也可以使用JAVA_OPTS,但只有Tomcat将使用CATALINA_OPTS。因此,如果您设置的环境变量仅供Tomcat使用,最好建议使用CATALINA_OPTS,而如果您设置环境变量以供其他Java应用程序使用(例如JBoss),则应该将您在JAVA_OPTS中的设置。