Apache Tomcat Windows 服務忽略 JAVA_HOME 環境變數
我正在嘗試在 Windows Server 2003 機器上設置 Apache Tomcat。
catalina.bat start
如果我使用命令行版本JAVA_HOME
(而不是JDK路徑。結果,我的腳本無法編譯,應用程序無法執行。我正在使用所有東西的舊版本:Tomcat 4 和 Java 1.4.2_19(這是一個遺留應用程序,我沒有時間在 mo 更新 - 我只是想讓它執行,用於第 1 階段)。
我已經安裝了 JDK
C:\j2sdk1.4.2_19
和 Tomcat 安裝到C:\Program Files\Apache Software Foundation\Tomcat 4.1
. 該服務的“Java 虛擬機”設置設置為C:\j2sdk1.4.2_19\jre\bin\client\jvm.dll
.JAVA_HOME
環境變數設置C:\j2sdk1.4.2_19
為.當我嘗試啟動我的應用程序時,它會將以下錯誤寫入日誌:
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the
classpath. Perhaps JAVA_HOME does not
point to the JDK. It is currently set
to "C:\j2sdk1.4.2_19\jre"
即它在不應該存在的地方添加了一個額外的“
\jre
” !JAVA_HOME
我還想知道它是否可能是某個地方的系統資料庫設置,但我查看了所有明顯的地方。
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat4\Parameters\Java\JavaHome
設置為與JAVA_HOME
環境變數相同,就像和之類的JavaHome
地方下的鍵一樣。JavaSoft\Java Development Kit\1.4``JavaSoft\Java Runtime Environment\1.4.2_19
我開始變得相當沮喪,試圖弄清楚為什麼它不起作用!
最後我通過啟動一個命令視窗來修復它,進行適當的設置,然後從 Tomcat 的目錄
JAVA_HOME
執行以下腳本:bin
service.bat remove service.bat install
我不知道它是怎麼做到的,但這重新配置了服務以使用
JAVA_HOME
.
檢查相應的系統資料庫項。這是我的:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\Tomcat7.55\Parameters\Java
更改 JVM 鍵值