2012-02-08 134 views
2

當我嘗試運行jnlp文件時,出現「無法創建JVM」錯誤。創建Java虛擬機失敗

但是,當我從jnlp中的Java/j2se標記中刪除max-heap-size="1100m"時,它有效。

max-heap-size似乎出了什麼問題。我做了一些實驗來更改eclipse.ini文件中的堆大小。我可以設置的最大堆大小是「940M」,否則當啓動eclipse時出現「無法創建JVM ...」錯誤。

我懷疑這是我PC上的內存(硬件)問題。我的筆記本電腦很新。但出於某種原因,我的管理員將操作系統從Windows 7更改爲Windows XP。他們現在想要更換回Windows 7.

我正在使用JDK 1.6 update 29和eclipse版本:3.7.0生成ID:I20110613-1736。 Windows xp sp3。

+1

可能的重複[Java webstart max-heap-size導致JVM無法啓動](http://stackoverflow.com/questions/3285915/java-webstart-max-heap-size-causes-jvm-cannot-be - 開始) – NPE 2012-02-08 15:12:18

+0

此外,請參閱http://stackoverflow.com/questions/171205/java-maximum-memory-on-windows-xp – NPE 2012-02-08 15:12:26

+0

我可以告訴你,這不是一個內存/硬件問題,因爲它發生在所有日食任何Windows到目前爲止我見過... – m0skit0 2012-02-08 15:12:32

回答

3

Java需要連續存儲堆空間。特別是Windows往往有一個有限的連續內存區域(如果其他程序正在運行,它會更小)

我原以爲你可以擁有1.2 GB的堆,但這遠低於4 GB的32位內存,理論上可以使用。

切換到64位OS上的64位JVM是解決方案。這將允許您創建接近物理內存大小的堆空間。