当我们手动将它作为Windows服务运行时,如何更改tomcat的java_opts?

Sri*_*vas 16 java console tomcat windows-services

我在控制台上手动运行tomcat 6作为Windows服务.我需要在启动之前更改java_opts.我怎么做?另外,有没有办法可以动态地查看日志?

小智 39

我知道这是一个旧线程,但需要纠正一些假设.

仅仅是一个FYI,在运行tomcat作为服务时不使用Catalina.bat.这是更改运行为Windows服务的tomcat的JAVA_OPTS的方法.

  1. 打开服务,然后单击Tomcat服务.记下服务名称(最有可能是Tomcat6).
  2. cd到Tomcat bin目录
  3. 运行命令

    tomcat6w // ES // Tomcat6(如果不同,请替换您的服务名称)

  4. 单击Java选项卡

  5. 将选项(每个在新行上)添加到Java Options框,并将initial和max memory设置为1536和2048

    -XX:MaxPermSize = 256m -Djava.awt.headless = true -Djava.net.preferIPv4Stack = true

  6. 单击"应用"

  7. 单击常规选项卡,然后重新启动该服务

  • 这应该是选定的答案:) (3认同)

Viv*_*day 10

要更改设置,请为Windows创建名为setenv.bat的文件,为Linux创建setenv.sh文件,条目如下:

视窗:

set JAVA_OPTS="-Xms256m -Xmx512m"
Run Code Online (Sandbox Code Playgroud)

Linux的:

export JAVA_OPTS="-Xms256m -Xmx512m"
Run Code Online (Sandbox Code Playgroud)

只需将此(setenv.bat/setenv.sh)文件放在%CATALINA_HOME%\ bin \文件夹中即可.您的命令文件(catalina.bat/catalina.sh)已经有如下声明:

视窗:

if exist "%CATALINA_HOME%\bin\setenv.bat" call "%CATALINA_HOME%\bin\setenv.bat"
Run Code Online (Sandbox Code Playgroud)

Linux的:

if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then
 . "$CATALINA_BASE/bin/setenv.sh"
Run Code Online (Sandbox Code Playgroud)

elif [-r"$ CATALINA_HOME/bin/setenv.sh"]; 然后 ."$ CATALINA_HOME/bin/setenv.sh"fi这将照顾其余部分.


Mik*_*ike 1

要更改$JAVA_OPTS,您可能需要编辑用于启动 Tomcat 的批处理文件。我不在 Windows 上运行 Tomcat,但它$JAVA_OPTS出现在我的 Linux 安装catalina.sh目录中bin/

至于在 Windows 上动态查看日志,我知道有几个选项。

  1. 下载并安装 Cygwin,然后在命令行上tail -f logfilename像在 Linux 中一样使用。
  2. 获取 BearTail 程序并使用它来跟踪您的日志文件。