![](/img/trans.png)
[英]create cucumber java testng maven executable jar project and run from command line
[英]Why an executable jar when run from a command line uses much more ram, than the same project run from Eclipse?
為什么從命令行運行時可執行jar使用更多的RAM - 在我的情況下大約多7倍 - 比從Eclipse運行的同一個項目?
在開發項目時,我從Eclipse運行應用程序(運行 - >運行),它使用了大約60mb(我看了剛剛創建的javaw.exe進程)的ram,而如果我創建了一個可執行的JAR並從命令行運行它(Windows公羊的使用量約為450mb。 此外,從命令行運行時,ram使用量變化的幅度大於Eclipse的Run-> Run。
這可能與Eclipse啟動應用程序的JVM設置有關。 在啟動Jar時,Java將最好地猜測在內存方面使用的設置。 您可以在控制台上更改java
命令使用的內存大小:
java -Xms64m -Xmx256m -cp your.jar
-Xms??m
以mb為單位設置最小堆大小。
-Xmx??m
以mb為單位設置最大堆大小。
Java可能會自動選擇更大的堆大小,因為它不受eclipse的支配。
在eclipse中,它必須與其他服務/應用程序共享內存。 但是在命令行上它沒有任何限制。 在命令行上,您還可以通過啟動應用程序來限制ram。 你可以通過這樣做來限制它
java -Xmx256M -Xms256M -cp /*.jar
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.