如何为从Eclipse执行的Tomcat实例设置JVM选项

5
我正在使用eclipse开发一个Java/Spring/Hibernate应用程序,它部署在tomcat上,但是我遇到了严重的java.lang.OutOfMemoryError: GC overhead limit exceeded问题。
我想尝试调整在启动应用程序时eclipse使用的tomcat实例的JVM设置。
您知道如何从eclipse设置JVM tomcat参数吗?如果您知道哪些文件受到影响,则+1。
我正在使用在Linux机器上从tar档案安装的tomcat 7.0.12。
我已经搜寻了几个小时,但是找不到可行的解决方案。谢谢!
2个回答

10

这里输入图像描述在“服务器(server)”视图下,您将看到列出Tomcat服务器实例。

双击它。这将在Eclipse中打开一个页面,显示服务器详细信息。在那里有一个称为“打开启动配置(Open launch configuration)”的链接。

单击该链接,它将弹出一个对话框。在该对话框中,在“参数(arguments)”选项卡下的VM参数(vm arguments)下,您可以传递VM参数。


2
我试图添加相同的内容...我希望你已经在Eclipse中添加了Tomcat,路径为window -> pref -> Server->runtime environment现在,在运行应用程序时,不要选择Run As -> Run on Server,而是选择Run As -> Run Configuration,选择Tomcat并在参数下提供您的VM参数。 - sudmong
我必须执行以下操作: {项目名称} -> 运行为 -> 运行配置 -> Apache Tomcat -> {我的服务器实例名称} -> 参数 -> VM参数。如果我理解正确,这个配置仅用于运行特定的项目实例,因此它应该优先考虑 @NimChimpsky 的回复。 - saste
没有“打开启动配置”链接。如果更新了这个,我会点赞的。 - Philip Rego
这是您可以添加 --enable-preview jvm 参数以运行使用 jdk 预览功能编译的应用程序的位置。例如,JDK-14 的预览功能。 - Pierre C

1

请指定您的Catalina启动脚本使用的参数,该脚本位于此处

tomcat_home/bin

它将使用位于catalina_base的setenv脚本。然后,您可以在其中添加:
export JAVA_OPTS="-server -Xmx768m"

或者适用于Windows。
set JAVA_OPTS=-server -Xmx768m

我在tomcat/bin目录下看到了很多脚本,其中包括startup.sh、catilina.sh和tool-wrapper.sh。你知道哪个脚本需要修改或者这些内容是否有文档记录吗? - saste
无论如何,startup.sh 似乎调用 catalina.sh,因此它应该是添加配置的正确位置。 - saste
这将改变所有东西,而不仅仅是Eclipse,对于只想针对Eclipse的用户,您可能需要另一个答案。它是Catalina,调用setenv(由您创建)。 sh或bat,不确定您是否使用Windows或*nix。 - NimChimpsky

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