如何增加堆栈大小eclipse.ini文件

时间:2017-07-26 13:33:47

标签: java eclipse eclipse-plugin eclipse-rcp

我的基于rcp的启动程序有launcher.exe,它在类加载期间有一些递归调用,因此得到堆栈溢出错误。为了避免它,我必须增加堆栈大小。但无法通过launcher.exe启动应用程序,但从Windows批处理脚本工作正常 我找到了类似的帖子forum post about increasing stack size 但没有多大帮助。 我的eclipse.ini:

-startup
plugins/org.eclipse.equinox.launcher_1.3.201.v20161025-1711.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.401.v20161122-1740
-vmargs
-Xms256m
-Xmx2048m
-Xss4m
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UnlockExperimentalVMOptions
-XX:+UseG1GC
-XX:+ScavengeBeforeFullGC
-Declipse.buildId=44.1.2

但奇怪的是,通过Windows批处理脚本,这非常好用:

@echo off
java -Dosgi.requiredJavaVersion=1.8 -Xms256m -Xmx256m -Xss2m -jar plugins/org.eclipse.equinox.launcher_1.3.201.v20161025-1711.jar -application xx.yy.zz.mm.application.application -showSplash splash.bmp

exit

不知道为什么eclipse.ini不考虑-Xss agrument 环境:Windows7 + eclipse Neon + 64bit java1.8

xxx.product文件的VM agruments有以下条目:

<launcherArgs>
  <vmArgs>-Xms256m -Xmx2048m -Xss4m 
-XX:MaxGCPauseMillis=10 -XX:MaxHeapFreeRatio=70 -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+ScavengeBeforeFullGC
  </vmArgs>
  <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
  </vmArgsMac>
  <vmArgsWin>-Declipse.buildId=44.1.2
  </vmArgsWin>
</launcherArgs>

我发现oracle blog here在ini文件中尝试使用-Xss4096k,但还没有运气!不知道通过ini启动和通过命令行启动之间的区别。看起来好像两者都相同,但肯定不是。

0 个答案:

没有答案