2013-08-26 28 views
-1

我必須檢查是否安裝java? 如果安裝了java,那麼我必須跳過它,如果沒有,那麼以安靜模式安裝它。如何實現java安裝條件

我知道如何安裝java程序在無聲模式

**cls 
C:\TEMP>jdk-7u4-windows-x64.exe /quiet 
echo installation complete 
pause** 

但如何在批處理文件來定義上述條件,雖然我很新的腳本。 任何鏈接或引用也將起作用。

回答

0
REM get the current installed Java version 
for /f "tokens=3" %%a in ('java -version 2^>^&1 ^| find /i "version"') do SET "JAVA_current=%%~a" 
IF NOT DEFINED JAVA_current (ECHO Java NOT installed.) ELSE ECHO Java version %JAVA_current% installed. 
+0

感謝回答,但我看不到的Java腳本安裝到這個代碼。它的簡單似乎得到了Java的版本。 我需要的是,如果在系統中找不到java,那麼它應該以靜默模式安裝java。 任何幫助將不勝感激。 thanx –

+1

如果您無法根據需要修改我的代碼示例,那麼應該將您的問題提交給另一個論壇(例如.yahoo,4chan)。這不是一個編碼服務。 – Endoro

+0

雅吧。對不起。但我是新手腳本,所以我決定在這裏發帖。我想我會在這裏變得更好。 我現在嘗試了什麼: - REM獲取當前安裝的Java版本 PAUSE for/f「tokens = 3」%% a in('java -version 2 ^> ^&1^| find/i「version」' ) PAUSE 做SET 「JAVA_current = %%〜一個」 如果沒有定義JAVA_current(ECHO的Java沒有安裝。) JDK-7U4窗口-x64.exe程序/安靜 回聲安裝完成 暫停 ELSE ECHO Java版本%已安裝JAVA_current%。 但是,在第一個PAUSE語句意味着「for」條件沒有正常工作之後,cmd propmt將不可見。 –

1

這適用於Windows 8的啓動安裝程序:

@echo off 
java >nul 2>nul & if errorlevel 9009 jdk-7u4-windows-x64.exe /quiet 
+0

++ 1這很好,我從來沒有聽說過! – Endoro