eclipse運行程序時報java.lang.OutOfMemoryError: Java heap space內存不足問題


 

System.setProperty("webdriver.firefox.bin",
        "D:\\Mozilla Firefox\\firefox.exe");

ProfilesIni pi = new ProfilesIni();
FirefoxProfile profile = pi.getProfile("default");
WebDriver driver = new FirefoxDriver(profile);
driver.get("http://hao123.com");

運行至

WebDriver driver = new FirefoxDriver(profile);

時突然報java.lang.OutOfMemoryError: Java heap space,

 

這個問題的根源是jvm虛擬機的默認Heap大小是64M,可以通過設置其最大和最小值來實現

 

JVM堆的設置是指java程序運行過程中JVM可以調配使用的內存空間的設置.

JVM在啟動的時候會自動設置Heap size的值,其初始空間(即-Xms)是物理內存的1/64,最大空間(-Xmx)是物理內存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等選項可進行設置。

例如:java -jar -Xmn16m -Xms64m -Xmx128m MyApp.jar

如果Heap Size設置偏小,除了這些異常信息外,還會發現程序的響應速度變慢了。GC占用了更多的時間,而應用分配到的執行時間較少。

Heap Size 最大不要超過可用物理內存的80%,一般的要將-Xms和-Xmx選項設置為相同,而-Xmn為1/4的-Xmx值。
Heap size的 -Xms -Xmn 設置不要超出物理內存的大小。否則會提示“Error occurred during initialization of VM Could not reserve enough space for object heap”。

 

-Xms <size> 
設置JVM初始化堆內存大小 

-Xmx <size> 
設置JVM最大的堆內存大小 

 

設置步驟:

填入-Xms64m -Xmx512m,然后點擊apply - > run就可以了!

 

參考詳情:

http://blog.csdn.net/jxzxm1_2/article/details/2499751

https://zhidao.baidu.com/question/1830186099735337420.html

http://www.cnblogs.com/zzblee/p/4038370.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM