0
我想抓取Java是否安裝在使用批處理文件的系統中。 下面的代碼給出瞭如果Java已經存在的版本。如果Java不存在,代碼無法執行如何查找如果Java已安裝或未使用批處理文件?
for /f "tokens=3" %%g in ('java -version 2^>^&1 ^| findstr /i "version"') do (
Set VERSION=%%g
)
如何檢測Java未安裝?
我想抓取Java是否安裝在使用批處理文件的系統中。 下面的代碼給出瞭如果Java已經存在的版本。如果Java不存在,代碼無法執行如何查找如果Java已安裝或未使用批處理文件?
for /f "tokens=3" %%g in ('java -version 2^>^&1 ^| findstr /i "version"') do (
Set VERSION=%%g
)
如何檢測Java未安裝?
假設你需要的任何版本輸出的第一行:
@Echo Off
Set "JV="
For /F "Tokens=3" %%A In ('java -version 2^>^&1') Do If Not Defined JV Set "JV=%%~A"
If /I "%JV%"=="not" (Echo Java is not installed) Else Echo Java Version "%JV%"
Pause
作爲一個側面說明,這不告訴你,如果沒有安裝Java,它會告訴你的Java可執行文件是否可用當前目錄或%PATH%
。還請注意,這使用您的陳述短語'java' is not recognized as an internal or external command, operable program or batch file
,這意味着此腳本可能是語言相關的。
可能重複的[如何從批處理腳本檢查java安裝?](http://stackoverflow.com/questions/2951804/how-to-check-java-installation-from-batch-script) – h0ch5tr4355
'echo% JAVA_HOME%'也值得一試。 – Filburt
我可以使用代碼來解析錯誤輸出。上面的代碼給出了一個錯誤:'java'不被識別爲內部或外部命令, 可操作的程序或批處理文件。我能以某種方式解析這個錯誤嗎? –