Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- :: Description: This is a batch file that I cobbled together from reddit.com/u/vocatus and Adminarsenal's PDQ Deploy
- :: script for Java installations. The script will kill any processes that might interfere with a Java
- :: deployment, nuke installation folders, registry keys, etc. in order to make the system clean again
- :: for a new deployment.
- ::
- :: While I like the nuke script, I have seen some issues with subsequent Java installations fail after
- :: the fact with 1638 errors. This script seems to work fine for me - even in repairing these issues.
- ::
- :: Edit the variables to configure where your Java MSI source is located to allow for the automated
- :: installation (so long as INSTALL_JAVA_x64 or INSTALL_JAVA_x86 equals yes).
- ::
- :: Credit: Some commands snagged from the Java nuker script from vocatus on reddit.com/r/sysadmin
- :: Source: http://www.reddit.com/r/usefulscripts/comments/2hzt5c/batch_java_runtime_nuker_purge_all_versions_of/
- :: Other Credits: Adminarsenal Java update process (via PDQDeploy)
- :: Author: Rob Dunn
- ::===============================================================
- :: Log settings
- ::===============================================================
- SETLOCAL
- @echo off
- set LOGPATH=%SystemDrive%\Logs
- set LOGFILE=%COMPUTERNAME%_java_installation_alt.log
- set SCRIPT_VERSION=1.0
- set SCRIPT_UPDATED=2015-09-09
- title Java Cleanup & Installation Script v%SCRIPT_VERSION% (%SCRIPT_UPDATED%)
- ::===============================================================
- :: Java installation parameters
- :: The JRE MSI must be in a place the script can find it (e.g. network path, same directory, etc)
- ::===============================================================
- :: Java install. Do you want to install Java afterwards?
- :: Change either of these to 'yes' if you want to reinstall Java after cleanup.
- :: If you do, make sure to set the location, file names and arguments below!
- set INSTALL_JAVA_x64=no
- set INSTALL_JAVA_x86=yes
- :: JRE 64-bit installer
- set JAVA_LOCATION_x64=%~dp0
- set JAVA_MSI_x64=jre1.8.0_60-x64.exe
- set MSI_ARGUMENTS_x86=/passive
- :: JRE 32-bit installer
- set JAVA_LOCATION_x86=%~dp0
- set JAVA_MSI_x86=jre1.8.0_60.msi
- set MSI_ARGUMENTS_x86=/passive
- ::===============================================================
- :: Create the log directory if it doesn't exist
- ::===============================================================
- if not exist %LOGPATH% mkdir %LOGPATH%
- if exist "%LOGPATH%\%LOGFILE%" del "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Kill Browsers/Java
- ::===============================================================
- echo %CUR_DATE% %TIME% - Killing running processes that might interfere with Java removal/installation...>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\taskkill.exe /f /im iexplore.exe /im firefox.exe /im chrome.exe /im opera.exe /im jqs.exe /im jusched.exe /im java.exe /im javaw.exe
- ::===============================================================
- :: Kill Previous Java install
- ::===============================================================
- :: %SYSTEMROOT%\System32\taskkill.exe /f /im msiexec.exe
- ::===============================================================
- :: Delete Java 8 Product Keys
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Product keys>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF238120800FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF238120850FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF238120811FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208020F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208520F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208130F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208040F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208540F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208150F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF2381208060F" /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Delete Java 8 Uninstall Keys
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Uninstall keys (32bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218000FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218005FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218011FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218020F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218025F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218031F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218040F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218045F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218051F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218060F0} /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Delete Java Uninstall Keys (on 64-bit machines)
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Uninstall keys (64bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218000FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218005FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218011FF} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218020F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218025F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218031F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218040F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218045F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218051F0} /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83218060F0} /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Delete Java 8 Installer Features Keys
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Installer Feature keys>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF238120800FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF238120850FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF238120811FF" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208020F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208520F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208130F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208040F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208540F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208150F" /f >> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Classes\Installer\Features\4EA42A62D9304AC4784BF2381208060F" /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Delete Java JRE8 Directory
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Directories (32bit)>> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre8\" RD /S /Q "%ProgramFiles%\Java\jre8" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_60\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_60"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_51\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_51" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_45\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_45" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_40\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_40" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_31\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_31" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_25\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_25" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_20\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_20" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_11\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_11" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles%\Java\jre1.8.0_05\" RD /S /Q "%ProgramFiles%\Java\jre1.8.0_05" >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Delete Java JRE8 Directory (on 64-bit machines)
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java 8 Directories (64bit)>> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre8\" RD /S /Q "%ProgramFiles(x86)%\Java\jre8"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_60\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_60" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_51\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_51" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_45\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_45" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_40\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_40" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_31\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_31" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_25\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_25" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_20\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_20" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_11\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_11" >> "%LOGPATH%\%LOGFILE%"
- IF EXIST "%ProgramFiles(x86)%\Java\jre1.8.0_05\" RD /S /Q "%ProgramFiles(x86)%\Java\jre1.8.0_05" >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Kill Javaupdate Scheduler
- ::===============================================================
- echo %CUR_DATE% %TIME% - Killing Java 8 Scheduler (jusched.exe)
- %SystemRoot%\System32\taskkill.exe /f /im jusched.exe >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Create java.settings.cfg
- ::===============================================================
- echo %CUR_DATE% %TIME% ! - Creating java.settings.cfg...
- IF NOT EXIST "%ALLUSERSPROFILE%\Oracle\Java\" md "%ALLUSERSPROFILE%\Oracle\Java"
- echo SPONSORS=0 > %ALLUSERSPROFILE%\Oracle\Java\java.settings.cfg
- ::===============================================================
- :: Install Java
- ::===============================================================
- :: x64
- if %INSTALL_JAVA_x64%==yes (
- echo %CUR_DATE% %TIME% ! Variable "INSTALL_JAVA_x64" was set to 'yes'. Now installing %JAVA_MSI_x64%...>> "%LOGPATH%\%LOGFILE%"
- echo %CUR_DATE% %TIME% ! Variable "INSTALL_JAVA_x64" was set to 'yes'. Now installing %JAVA_MSI_x64%...
- MSIEXEC.EXE /i "%JAVA_LOCATION_x64%\%JAVA_MSI_x64%" %MSI_ARGUMENTS_x86%
- java -version >> "%LOGPATH%\%LOGFILE%"
- echo Done.>> "%LOGPATH%\%LOGFILE%"
- )
- :: x86
- if %INSTALL_JAVA_x86%==yes (
- echo %CUR_DATE% %TIME% ! Variable "INSTALL_JAVA_x86" was set to 'yes'. Now installing %JAVA_MSI_x86%...>> "%LOGPATH%\%LOGFILE%"
- echo %CUR_DATE% %TIME% ! Variable "INSTALL_JAVA_x86" was set to 'yes'. Now installing %JAVA_MSI_x86%...
- MSIEXEC.EXE /i "%JAVA_LOCATION_x86%\%JAVA_MSI_x86%" %MSI_ARGUMENTS_x86%
- java -version >> "%LOGPATH%\%LOGFILE%"
- echo Done.>> "%LOGPATH%\%LOGFILE%"
- )
- ::===============================================================
- :: Remove Scheduler from Run
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java Scheduler from CurrentVersion\Run (32bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Remove Scheduler from Run (on 64-bit machines)
- ::===============================================================
- echo %CUR_DATE% %TIME% - Removing Java Scheduler from CurrentVersion\Run (64bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Disable Auto-Update
- ::===============================================================
- echo %CUR_DATE% %TIME% - Disabling auto-update (32bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\JavaSoft\Java Update" /f >> "%LOGPATH%\%LOGFILE%"
- ::===============================================================
- :: Disable Auto-Update (on 64-bit machines)
- ::===============================================================
- echo %CUR_DATE% %TIME% - Disabling auto-update (64bit)>> "%LOGPATH%\%LOGFILE%"
- %SystemRoot%\System32\Reg.exe DELETE "HKLM\SOFTWARE\Wow6432Node\JavaSoft\Java Update" /f >> "%LOGPATH%\%LOGFILE%"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement