如何为jar文件设置最大jvm-memory(XMX)

如何在不向程序添加额外批处理脚本的情况下设置最大jvm内存。 答案如下。

这是一个很好的问题,但你的实际假设很多。 我假设您必须记录jar的名称,以便用户调用“java -jar xyz.jar”,那么您是否还需要在文档中包含“-Xmx256M”?

你可能有更多的运气使用java启动器,例如这个用于Windows的启动器,你将启动器配置(路径,最大内存等)放在一个单独的文件中。 对于跨平台,有LaunchAnywhere和其他function相似的function。 请参阅如何将Java程序转换为.exe文件?

改进现有方案:

  • 使用java.home系统属性来解析JDK / JRE的位置
  • 如果您的应用程序需要本机代码,请使用java.class.path设置类路径,类似于java.library.path
  • 将传递给main方法的命令参数传递给spanwed进程

但是,这似乎是很多努力,充其量只是一个漏洞的抽象,相反,简单明了的文档就足够了。