我正在使用ANTLR4解析一个文件。它从内存异常中释放出来。因此,我在sts.ini和eclipse.ini中增加了堆内存。下面是我的sts.ini文件。
-startup
plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.900.v20180922-1751
-product
org.springsource.sts.ide
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.8
--add-modules=ALL-SYSTEM
-XX:MaxPermSize=2048m
-Dosgi.module.lock.timeout=10
-Dorg.eclipse.swt.browser.IEVersion=10001
-Xmx2048m
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Xms512m
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UseConcMarkSweepGC
-XX:+UseFastAccessorMethods堆内存增加。我可以在eclipse/sts的堆状态栏中看到。但这个计划还是失败了。
当我在运行配置中传递-Xmx1024m时,程序就成功了。eclipse/sts为什么没有传递这些vmarg来运行配置呢?
更新:我使用Runtime.getRuntime().maxMemory();验证了内存,它显示没有运行配置的512MB,运行配置为2GB。
我没有运行配置中的任何其他vmarg。
STS版本:
版本:3.9.7 Eclipse,平台:Eclipse 2018-12 (4.10.0)
发布于 2019-05-07 09:23:06
eclipse.ini / sts.ini文件中的设置仅供Eclipse使用-它们不会传递给您在Eclipse中运行的程序。
每个程序的设置是独立的,并在程序的“运行>运行配置”中进行配置。
您可以使用‘Edit.’在'Java >已安装的JRE‘页面上的首选项中配置特定JRE的默认VM参数。按钮并编辑“默认VM参数”字段。
https://stackoverflow.com/questions/56018809
复制相似问题