如何设置可执行Spring Boot jarfile的JVM属性?

时间:2016-11-30 16:35:28

标签: java spring-boot jvm

作为How do I build a Spring Boot jarfile that systemd can execute directly as a service?的后续问题,如何设置可执行Spring Boot jarfile的JVM属性?例如,如何设置最大堆大小(即-Xmx2048m)?

3 个答案:

答案 0 :(得分:2)

your-app.conf放在your-app.jar旁边,内容为

JAVA_OPTS=-Xmx2048M

有关详细信息,请参阅deployment script customization指南或launch.script

答案 1 :(得分:1)

这不是你问题的直接答案,而是解决问题的方法。

我从未选择过可执行jar,因为我相信在应用启动时从外部设置参数会更灵活。

这是通过命令行设置JVM系统属性和应用程序属性的方法:

java -Xmx2048m -jar application.jar --paramname="paramvalue"

然后,您可以在Spring Bean或Service中获取参数paramname,如下所示:

@Value("${paramname}")
private String paramname;

您可以在此处详细了解该主题:

http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

修改

看一下这个答案,这个答案似乎就是你要找的:

https://stackoverflow.com/a/33856394/272180

答案 2 :(得分:0)

  • 根据1,可以在环境中设置JVM属性 变量_JAVA_OPTIONS
  • 根据2,环境变量JAVA_TOOL_OPTIONS也设置了JVM属性。