题 在tomcat中添加jvm选项


如何在Apache Tomcat 6中添加jvm(Java虚拟机)选项?

tomcat中是否有管理控制台?我试过了 HTTP://本地主机:8080 /管理员 但我无法得到任何东西。

我想添加以下jvm选项:

-agentpath:C:\calltracer\jvmti\calltracer5.dll=traceFile-C:\calltracer\call.trace,filterFile-C:\calltracer\filters.txt,outputType-xml,usage-uncontrolled -Djava.library.path=C:\calltracer\jvmti -Dcalltracerlib=calltracer5

32
2017-10-12 10:40


起源




答案:


正如Bhavik Shah所说,你可以在JAVA_OPTS中完成,但推荐的方法(根据catalina.sh)是使用CATALINA_OPTS:

#   CATALINA_OPTS   (Optional) Java runtime options used when the "start",
#                   "run" or "debug" command is executed.
#                   Include here and not in JAVA_OPTS all options, that should
#                   only be used by Tomcat itself, not by the stop process,
#                   the version command etc.
#                   Examples are heap size, GC logging, JMX ports etc.

#   JAVA_OPTS       (Optional) Java runtime options used when any command
#                   is executed.
#                   Include here and not in CATALINA_OPTS all options, that
#                   should be used by Tomcat and also by the stop process,
#                   the version command etc.
#                   Most options should go into CATALINA_OPTS.

29
2018-06-05 19:16





把它设置在 JAVA_OPTS [tomcat的路径] /bin/catalina.sh中的变量。在Windows下有一个控制台,您可以在其中设置它或使用catalina.bat。

JAVA_OPTS=-agentpath:C:\calltracer\jvmti\calltracer5.dll=traceFile-C:\calltracer\call.trace,filterFile-C:\calltracer\filters.txt,outputType-xml,usage-uncontrolled -Djava.library.path=C:\calltracer\jvmti -Dcalltracerlib=calltracer5

20
2017-10-12 10:48



至少在Tomcat 7中,这不是定制的推荐位置。从 catalina.sh:“不要在此脚本中设置变量。而是将它们放入CATALINA_BASE / bin中的脚本setenv.sh中,以保持您的自定义分离”。另外,正如米奇所说, CATALINA_OPTS 是存储它的更规范的变量。 - Andy MacKinlay
要扩展setenv.sh,这是一个示例条目: export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m" (这会增加最大烫发大小)。 - whla


为此,您需要运行“tomcat6w”应用程序,该应用程序是“bin”目录中标准Tomcat分发的一部分。例如。对于Windows,默认为“C:\ Program Files \ Apache Software Foundation \ Tomcat 6.0 \ bin \ tomcat6w.exe”。 “tomcat6w”应用程序启动GUI。如果选择“Java”选项卡,则可以输入所有Java选项。

也可以通过命令行将JVM选项传递给tomcat。为此,您需要使用以下命令:

<tomcatexecutable> //US//<tomcatservicename> ++JvmOptions="<JVMoptions>"

其中“tomcatexecutable”指的是tomcat应用程序,“tomcatservicename”是您正在使用的tomcat服务名称,“JVMoptions”是您的JVM选项。例如:

"tomcat6.exe" //US//tomcat6 ++JvmOptions="-XX:MaxPermSize=128m" 

17
2018-01-04 11:36



这意味着tomcat总是必须作为服务启动才能使更改生效,因此第一种方法应该更好 - frewper


检查catalina.sh后(对于windows使用下面提到的所有内容的.bat版本)

#   Do not set the variables in this script. Instead put them into a script
#   setenv.sh in CATALINA_BASE/bin to keep your customizations separate.

还有这个

#   CATALINA_OPTS   (Optional) Java runtime options used when the "start",
#                   "run" or "debug" command is executed.
#                   Include here and not in JAVA_OPTS all options, that should
#                   only be used by Tomcat itself, not by the stop process,
#                   the version command etc.
#                   Examples are heap size, GC logging, JMX ports etc

因此,在CATALINA_BASE / bin下创建一个setenv.sh(catalina.sh所在的dir)。编辑文件并将参数设置为CATALINA_OPTS

对于例如如果要更改堆大小,文件将如下所示

CATALINA_OPTS=-Xmx512m

或者在你的情况下,因为你正在使用windows setenv.bat

set CATALINA_OPTS=-agentpath:C:\calltracer\jvmti\calltracer5.dll=traceFile-C:\calltracer\call.trace,filterFile-C:\calltracer\filters.txt,outputType-xml,usage-uncontrolled -Djava.library.path=C:\calltracer\jvmti -Dcalltracerlib=calltracer5

要稍后清除添加的选项,只需删除setenv.bat / sh


12
2018-01-19 00:20





如果你想在eclipse上设置jvm args,可以使用下面的代码:

看下面两个链接来完成它:

  1. eclipse设置将jvm args传递给java
  2. eclipse设置将jvm args传递给java并添加到eclipse上运行config
     

对于tomcat,您可以在tomcat的bin文件夹中创建一个setenv.bat文件,并在其下面添加以下行:

•echo“你好我开始setenv”

•设置CATALINA_OPTS = -DNLP.home = $ {NLP.home} -Dhostname = $ {hostname}


1
2018-02-02 21:23





如果从startup.bat启动tomcat,则需要添加一个系统变量:JAVA_OPTS 作为名称和你想要的参数(在你的情况下:

-agentpath:C:\ calltracer \的jvmti \ calltracer5.dll = TRACEFILE-C:\ calltracer \ call.trace,filterFile-C:\ calltracer \ filters.txt的,输出类型的XML,使用不受控 -Djava.library.path = C:\ calltracer \ jvmti -Dcalltracerlib = calltracer5


0
2017-07-06 12:13