如何使用批處理腳本在自定義路徑上安裝 java 執行時 /jre?
我正在嘗試創建一個 bat 文件以使用 sccm 進行無人值守安裝。我從http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html下載了 jre-7u55-windows-i586.exe (jre-7u55-windows-i586 是用於我們正在執行的遺留應用程序)
並關注https://www.java.com/en/download/help/silent_install.xml 並可以進入
“%~dp0 jre-7u55-windows-i586.exe " /s /v"AgreeToLicense=YES INSTALLDIR=C:\Program Files\test\test1\Java\jre1.7.0.55 IEXPLORER=1 MOZILLA=1 REBOOT=SUPRESS JAVAUPDATE=0 系統托盤=0”
僅當安裝目錄不是 C:\Program Files\ 時,上述腳本才有效
例如,如果
INSTALLDIR=**C:\test\**test1\Java\jre1.7.0.55
..
但我希望 INSTALLDIR 成為
C:\Program Files\test\test1\Java\jre1.7.0.55
我嘗試添加以下內容
INSTALLDIR="C:\Program Files\test\test1\Java\jre1.7.0.55"
— 不工作
INSTALLDIR='C:\Program Files\test\test1\Java\jre1.7.0.55'
— 不工作
/INSTALLDIR=C:\Program Files\test\test1\Java\jre1.7.0.55
— 不工作
"INSTALLDIR=C:\Program Files\test\test1\Java\jre1.7.0.55"
— 不工作我一直在得到這個..(聽起來相當誤導性的資訊)
我不明白為什麼我不能在 C:\Program Files\test\test1\Java\jre1.7.0.55 上安裝它。我在這裡缺少什麼?C:\Program Files\test\test1\Java\jre1.7.0.55 有什麼問題。請幫忙
(我的帳戶確實擁有管理員權限)
您可以從完整路徑中派生短名稱,以克服問題中提到的限制。
REM Insert full path to executable here as a literal string or environment Call :s_Install_Short "C:\Program Files\test\test1\Java\jre1.7.0.55" Goto :EOF :s_Install_Short REM Block attempts to pass no parameter If "%~1" EQU "" Goto :EOF REM %~s1 contains the path in the first parameter as a shortened string "%~dp0jre-7u55-windows-i586.exe" /s /v"AgreeToLicense=YES INSTALLDIR=%~s1 IEXPLORER=1 MOZILLA=1 REBOOT=SUPRESS JAVAUPDATE=0 SYSTRAY=0" Goto :EOF
的使用
%~s1
會變成C:\Program Files\test\test1\Java\jre1.7.0.55
類似於C:\PROGRA~1\test\test1\Java\jre1.7.0.55