java - JAVA 8:如何在命令中传递 -xms 和 -xmx JVM 值
问题描述
我在Java 8环境中运行springboot应用程序
我用来运行我的应用程序的命令是这样的:
spring-boot:run -Plocalmysql -Dmaven.test.skip=true -Dspring.profiles.active=localmysql
我的目的是将 JVM 值规范添加到我的命令中;所以我被建议使用这个选项语法:
"-Drun.jvmArguments=Xms512m -Xmx512m"
但是在运行时它会向我抛出这个警告:
> Java HotSpot(TM) 64-Bit Server VM warning: ignoring option
> PermSize=512m; support was removed in 8.0
是否有任何解决方法或解决方案可以继续在命令中传递它?
解决方案
这只是关于另一个-XX:PermSize
自 Java 8 以来不支持的 JVM 参数的警告消息,因为 Permanent Generation 已替换为 Metaspace。
如果您在为内存大小设置 JVM 选项时遇到问题,对于 Spring Boot 2,您应该使用spring-boot.run.jvmArguments
参数:
mvn spring-boot:run -Plocalmysql -Dmaven.test.skip=true -Dspring.profiles.active=localmysql -Dspring-boot.run.jvmArguments="-Xms512m -Xmx1024m"
或者您可以在 Maven 插件配置部分设置这些参数pom.xml
:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<jvmArguments>
-Xms512m
-Xmx1024m
</jvmArguments>
</configuration>
</plugin>
推荐阅读
- python - 熊猫如何将 groupby 与 loc 一起使用
- mysql - 带有mysql db的等待/异步nodejs不会给出预期的结果
- jquery - 如何通过简单的滚动和保持分页关闭在 jquery 的数据表中从一页移动到下一页
- spring - 是否可以仅使用注释约束来过滤数据但不能应用于表的列?
- python - 2秒后按钮销毁Tkinter python
- javascript - 在Vue组件中,当另一个按钮单击而不使用setTimout时,如何将v-combobox输入更改反映到v-model变量?
- javascript - 如何让它等待直到它执行一个新代码
- visual-studio-code - 启动 VS Code 时挂起“未找到 GLIBCXX_3.4.20”,我可以指向非标准位置的 libstdc++.so.6 吗?
- python - 比较包含熊猫时间戳的两列
- javascript - 在后台渲染繁重的 React 组件