当Tomcat作为服务运行时,如何传递JVM参数?

28
我需要将一些JVM参数传递给Tomcat运行的JVM,以便我的应用程序可以获取它们。我想按照此文章中概述的过程来获取环境变量。我应该如何操作? 更新 抱歉,这是在Windows下运行的(我的开发机上是Windows 7,在客户端服务器上是Windows Server 2003)。
2个回答

41

Windows:

在Tomcat的/bin文件夹中,您应该有一个tomcat5w.exe 管理程序(或在更新版本中为tomcat6w.ex、tomcat8w.exe等)。转到Java选项卡并将args添加到“Java Options:”框中。

enter image description here

请注意,当您添加新的args时,您需要将它们作为该框中的NEW LINES添加(在任何其他行的上面或下面),而不是作为现有行上值的前面或后面的附加参数。

Linux / UNIX:

在*nix中,应该会捕捉到对setenv.sh文件的更改:

export JAVA_OPTS=-server -Xms2g -Xmx4g -XX:PermSize=64m -XX:MaxPermSize=256m $JAVA_OPTS

不要触碰catalina.sh或其他位于bin目录下的文件


4
Windows服务不使用BAT文件来启动Tomcat。 - Aaron Digulla
即使它作为Windows服务运行时也一样吗?在我看来,Windows执行C:\ apache-tomcat-5.5.28 \ bin \ tomcat5.exe,尽管有一个命令行参数//RS//<SERVICE_NAME>。 - Omar Kooheji
@Aaron,抱歉,我发完答案后才意识到这个问题的第二个方面。 - Michael
3
我找不到这个Java选项卡。我在运行Windows 2008R2的服务。 - Teysz
我尝试在服务Java选项中使用-noverify,但它不起作用(服务未启动)。有任何想法吗? - Lin

25

您需要编辑Windows服务。有三种方法可以实现:

  1. 使用//MS//ServiceName启动Tomcat5w,以在系统托盘中获得一个图标,从而快速访问服务的配置。

  2. 在“控制面板”中打开服务管理器。有一个Tomcat的条目。

在编辑器中,有一个选项卡可以添加其他JVM参数。

第三种方式(我更喜欢的方式)是编写一个编辑配置文件的脚本。这样,您可以将配置保存在某个位置进行备份。请参阅文档了解如何操作(提示:使用tomcat5 //US//...)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接