Maven 中的可用堆大小不会增加
当我运行 maven-jetty-plugin 时,我运行下一个命令:
mvn -DMAVEN_OPTS="-Xmx1024m -Xms512m" -Djetty.port=8080 jetty:run
但是当我尝试输出可用堆大小时,
Long heapFreeSize = Runtime.getRuntime().freeMemory();
它总是输出大约 30000000 左右的内容。
我想它的大小以字节为单位,大约 30 兆字节。
那么为什么空闲堆内存没有增加呢?
When I run maven-jetty-plugin, I run next command:
mvn -DMAVEN_OPTS="-Xmx1024m -Xms512m" -Djetty.port=8080 jetty:run
but when I try to output free heap size with
Long heapFreeSize = Runtime.getRuntime().freeMemory();
It always outputs something about about 30000000.
I suppose it's size in bytes, so about 30 megabytes.
Why then free heap memory did not increase?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MAVEN_OPTS
是一个环境变量,由 Maven 读取并用作 fork java 进程的命令行参数。命令行参数控制Java 可执行文件的启动方式,例如内存设置之类的内容。-D
用于设置Java系统属性,这与命令行参数完全不同。 Java 系统属性可以通过编程方式读取,例如使用 System.getProperties()。Windows:
Linux:
MAVEN_OPTS
is an environment variable, which is read by Maven and used as the command line arguments for forking java processes. Command line arguments control how the Java executable is started, e.g. stuff like memory settings.-D
is used for setting Java System Properties, which is something completely different than command line arguments. Java System Properties can be read programmatically, e.g. by using System.getProperties().Windows:
Linux:
我认为 -DMAVEN_OPTS="-Xmx1024m -Xms512m" 不是在这里指定内存参数的正确方法。
设置名为 MAVEN_OPTS 的环境变量,其内容为“-Xmx1024m -Xms512m”
I think -DMAVEN_OPTS="-Xmx1024m -Xms512m" is not correct way to specify memory params here.
Set a env variable called MAVEN_OPTS with content "-Xmx1024m -Xms512m"