簡體   English   中英

Java虛擬機啟動器無法創建虛擬機錯誤如何解決?

[英]How to solve could not create the virtual machine error of Java Virtual Machine Launcher?

我正在研究 java wicket 框架和 Apache tomcat。 當我嘗試啟動 tomcat 時,它顯示 Java 虛擬機啟動器彈出窗口“無法創建 Java 虛擬機”。

單擊彈出窗口上的“確定”按鈕后,它會在控制台上顯示錯誤。

VM 初始化期間發生錯誤。
無法為對象堆保留足夠的空間。

請給我任何參考或建議。

錯誤:

sony@sony-VPCEH25EN:~$ java --version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar 
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

解決方案:刪除多余的連字符“-”

sony@sony-VPCEH25EN:~$ java -version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar 
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

當我們從 java 8 升級到 java 10 時,我也遇到了這個問題。我通過刪除解決了

-Djava.endorsed.dirs="C:\Program Files\Apache Software Foundation\Tomcat 8.5\endorsed"

從論點。

  • 同時按 Windows+Pause 鍵打開“系統”窗口。 如果您願意,也可以打開控制面板手冊前往那里。 單擊左側的“高級系統設置”,然后單擊“高級”選項卡。
  • 在此處選擇環境變量。
  • 單擊系統變量下的新建。
  • 輸入“_JAVA_OPTIONS”作為變量名。
  • 輸入“-Xmx1024M”作為變量值。
  • 單擊確定兩次。

編輯您的 Catlina.bat,使您的 -Xmx 設置小於您的物理內存

請參閱Tomcat 7:如何正確設置初始堆大小?

添加系統變量 _JAVA_OPTIONS 並在“新變量值”中添加“-Xmx1024M”。

Xmx 設置最大堆內存大小

我在 Windows 64 位操作系統上使用“jdk-10.0.1_windows-x64_bin”和 eclipse-jee-oxygen-3a-win32-x86_64 時遇到了同樣的問題。

我通過將我的 jdk 更改為“jdk-8u172-windows-x64”解決了這個問題。 現在它工作正常。

錯誤並沒有說太多,很多事情都可能是錯誤的。 在我的情況下,一件事是錯誤的

-x.DargName=108352123

這顯然是錯誤的,應該是

-Dx.argName=108352123

我在Windows 64位操作系統上使用JDK 1.8.0_05 64 位和eclipse-jee-oxygen-3a-win32-x86_64時遇到了同樣的問題。

在此處輸入圖像描述

我通過將JDK版本jdk1.8.0_05更改為jdk1.8.0_172解決了這個問題

對我來說,它選擇了在 env vars 中設置的默認 JVM v6。

需要在 eclipse.ini 中顯式添加以下內容才能使用光子要求的 v8。

-vm
C:\Program Files\Java\jdk1.8.0_75\bin\javaw.exe
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8

注意:在 vm 參數上方添加 vm 條目,否則它將不起作用!

您只需將 JAVA_HOME 添加到您的環境變量中。 只需將此變量指向 jdk 位置(而不是 jdk bin 位置),如下圖所示。 在此處輸入圖像描述

在此處輸入圖像描述

如果其他選項都不起作用,那么這可能是 JDK 本身的版本問題,只需卸載當前的 jdk 並安裝最新版本即可。

我也遇到過這個問題。 在嘗試了一切之后,我升級到了最新的 JDK,這個問題自己解決了。

當我將 tomcat 8.5與 Java 10一起使用時,我遇到了同樣的問題。 我安裝了 Java 8(1.8.0_171) ,它運行良好,沒有任何問題。

在 ubuntu(版本 18)上,一些應用程序支持 java 8 而不支持 java 11。如果是這種情況,您可以按照以下主題的說明切換到 java 8: https ://askubuntu.com/questions/1133216/ 降級-java-11-to-java-8

我不得不在我的項目中添加一個較舊的 jdk。

項目文件夾上的右鍵 > 屬性 > Java 構建路徑 > 庫 > 添加庫 > JRE 系統庫

在此處輸入圖像描述

在此處輸入圖像描述

如果您沒有 jdk8 的軟件包,請下載上面某些用戶提到的 jdk ( http://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/jdk-8u172-windows -x64.exe ) 並單擊“Installed JREs”並搜索您下載 jdk8 的目錄。

在此處輸入圖像描述

然后點擊完成。

刪除 apache 服務器並重新添加。

魔術完成了;)

我今天在 Windows 10 上運行古老的軟件Dundjinni時遇到了同樣的問題,這是一種映射工具。(Dundjinni 需要安裝相當舊的 Java;我沒有嘗試更新 Java,因為擔心程序會失敗。)我的方法是只需在管理員模式下運行 Dundjinni。 方法如下:

單擊開始或按開始鍵,向下導航到軟件,右鍵單擊程序,選擇更多,然后選擇以管理員身份運行。 請注意,如果您只是鍵入軟件的名稱,則此選項不可用。

在此處輸入圖像描述

- 從 tomcat lib 文件夾中打開已安裝的 TomcatX.exe 版本

- 從 Tomcat9 屬性屏幕中,選擇 Java 選項卡

-刪除行“-Djava.endorsed.dirs=XXXXXX”

- 選擇常規選項卡並單擊開始按鈕以重新啟動 Tomcat

我正在研究Java wicket框架和Apache tomcat。 我嘗試時在這里遇到問題
啟動tomcat,它將顯示“ Java虛擬機啟動器”彈出窗口“無法創建
Java虛擬機”。
在彈出窗口中單擊“確定”按鈕后,它將在控制台上顯示錯誤。

VM初始化期間發生錯誤。
無法為對象堆保留足夠的空間。

請給我任何參考或建議。
提前致謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM