gpt4 book ai didi

java - 为什么从命令行运行的可执行 jar 比从 Eclipse 运行的同一项目使用更多的内存?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:18:19 25 4
gpt4 key购买 nike

为什么从命令行运行的可执行 jar 比从 Eclipse 运行的同一项目使用更多的 RAM - 在我的例子中大约多 7 倍?

在开发项目时,我从 Eclipse(运行 -> 运行)运行应用程序,它使用了大约 60mb(我查看了刚刚创建的 javaw.exe 进程)的 ram,而如果我创建一个可执行 JAR 并从命令运行它行 (Windows) ram 使用量约为 450mb。此外,与从 Eclipse 的运行-> 运行相比,从命令行运行时 ram 使用变化的幅度更大。

最佳答案

这可能与 Eclipse 启动应用程序时使用的 JVM 设置有关。启动 Jar 时,Java 将根据内存做出最佳猜测以使用哪些设置。您可以在控制台上使用 java 命令更改所用内存的大小:

java -Xms64m -Xmx256m -cp your.jar

-Xms??m 以 mb 为单位设置最小堆大小。
-Xmx??m 以 mb 为单位设置最大堆大小。

Java 可能会自动选择更大的堆大小,因为它不是由 eclipse 决定的。

关于java - 为什么从命令行运行的可执行 jar 比从 Eclipse 运行的同一项目使用更多的内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13961403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com