Verificação de atualização de Java silenciosa

5

Como ter atualizações automáticas de Java sem o processo jusched.exe sendo executado o tempo todo em segundo plano e com controle quando uma verificação da atualização deve ocorrer?

    
por rik 01.07.2012 / 20:46

2 respostas

7

Suposições:

  • Windows 7 de 64 bits
  • Java de 32 bits

Desative as Atualizações automáticas do Java: Altere as opções de atualização do Java .

Crie o script java_check_update.ps1 do PowerShell com o seguinte conteúdo:

$currVer = Get-ItemProperty "hklm:\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment" -name "CurrentVersion"

if (!$currVer.'CurrentVersion') {
    Exit
}

$famVerStr = ('Java' + $currVer.'CurrentVersion'.Split(".")[1] + 'FamilyVersion')
$famVer = Get-ItemProperty "hklm:\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment" -name $famVerStr

if (!$famVer.$famVerStr) {
    Exit
}

$java_version = $famVer.$famVerStr

$url = "http://javadl-esd.sun.com/update/" + $currVer.'CurrentVersion' + ".0/map-" + $currVer.'CurrentVersion' + ".0.xml"

$c = New-Object System.Net.WebClient
$xml = $c.DownloadString($url)

$p = [xml]$xml
$n = $p.SelectSingleNode('java-update-map/mapping[version="' + $java_version + '"]')

if ($n) {
    #update available
    cmd.exe /c "C:\Program Files (x86)\Common Files\Java\Java Update\jucheck.exe"
}

Crie o java_check_update.vbs VBScript com o seguinte conteúdo:

Set oShell = CreateObject("WScript.Shell")
oShell.Run "powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File ""PATH_TO_POWERSHELL_SCRIPT""", 0

PATH_TO_POWERSHELL_SCRIPT por exemplo: D:\Scripts\java_check_update.ps1

Adicione uma nova tarefa no Agendador de Tarefas para executar o script java_check_update.vbs (caminho completo para o arquivo) todos os dias, semanas ou meses.

    
por 01.07.2012 / 20:46
0

Você também pode usar este programa auto java updater . Programe-o e deixe-o rodar em segundo plano e ele fará tudo automaticamente.

    
por 25.09.2014 / 20:13