https://docs.oracle.com/javase/7/docs/technotes/guides/jweb/jcp/properties.html
Java hat immer unterschiedliche Programmpfade.
Deshalb kann man so über die Registry herausfinden, wo die aktuelle Javaversion installiert ist:
$javahome = gci HKLM:\Software\JavaSoft -rec -ea SilentlyContinue | ` % { if((get-itemproperty -Path $_.PsPath) -match "JavaHome") { $_.PsPath} } | ` Get-ItemProperty| select-Object -last 1 | ft -HideTableHeader JavaHome | out-String echo $javahome
Standardmäßig sind bei einer neuen Javaversion die allgemeinen Konfigurationen hier hinterlegt:
C:\Windows\Sun\Java\Deployment\deployment.properties
Darüber werden auch die Registryinformationen gesteuert und immer wieder zurückgesetzt, wenn geändert.
HKCU\Software\JavaSoft\DeploymentProperties
manuelle Einträge in Datei: C:\Users\benutzer\AppData\LocalLow\Sun\Java\Deployment\deployment.properties
bzw.
manuelle Einträge in Datei: C:\windows\Sun\Java\Deployment\deployment.properties
deployment.user.security.exception.sites=C\:\\Users\\benutzer\\AppData\\LocalLow\\Sun\\Java\\Deployment\\security\\exception.sites deployment.user.security.trusted.certs=C\:\\Users\\benutzer\\AppData\\LocalLow\\Sun\\Java\\Deployment\\security\\trusted.certs deployment.user.security.trusted.cacerts=C\:\\Users\\benutzer\\AppData\\LocalLow\\Sun\\Java\\Deployment\\security\\trusted.cacerts
Wenn in der o.g. Datei nichts spezielles für Benutzer eingetragen ist, wird hier nach Seiten-Ausnahmen gesucht:
%userprofile%\AppData\LocalLow\Sun\Java\Deployment\security\exception.sites
################################################################################ # writejavaexceptionlist.ps1 -excpt http://mytomcatsrv:8080 # java-exceptiondatei auslesen und eintrag für tomcatserver einfügen /rb 2019 ################################################################################ #$ErrorActionPreference= 'silentlycontinue' param( [string]$excpt ) $esites = "$Env:USERPROFILE\AppData\LocalLow\Sun\Java\Deployment\security\exception.sites" $content = Get-Content $esites If (!(Test-Path $esites)) {echo "file not exist" New-Item -path $esites echo $excpt |Out-file -append $esites #-NoNewline } If (($content).Contains($excpt)) { #write-host "$excpt found in $esites" break; } else { #write-host "$excpt not found in $esites" Add-Content -path $esites -Value $nl$excpt #-NoNewline ##CRLF aus Datei löschen wenn vorhanden (gc $esites) | ? {$_.trim() -ne "" } | set-content $esites } ################################################################################
Datei c:\windows\sun\Java\Deployment\exception.sites
erstellen und editieren
################################################################################ #setJacaCerts.ps1 -certfile \\mydom\netlogon\certs\mycert.crt -alias mytomcat #installiere ein Zertifikat in den Javastore des Benutzers / rb /2019 ################################################################################ param( [string]$certfile, [string]$alias ) $keystore = $env:USERPROFILE + "\AppData\LocalLow\Sun\Java\Deployment\security\trusted.certs" $javahome = gci HKLM:\Software\JavaSoft -rec -ea SilentlyContinue | ` % { if((get-itemproperty -Path $_.PsPath) -match "JavaHome") { $_.PsPath} } | ` Get-ItemProperty| select-Object -last 1 | ft -HideTableHeader JavaHome | out-String $keytoolpath = $javahome.Trim()+"\bin\keytool.exe" Start-Process -FilePath "$keytoolpath" -ArgumentList '-importcert',"-alias $alias","-file $certfile",` '-storepass mypassw0rd','-noprompt',"-keystore $keystore" -NoNewWindow ################################################################################
Zertifikate in cmd auflisten:
"c:\Program Files (x86)\Java\jre1.8.0_202\bin\keytool.exe" -list -storepass mypassw0rd -keystore c:\users\username\AppData\LocalLow\Sun\Java\Deployment\security\trusted.certs
Zertifikat manuell wieder löschen:
"c:\Program Files (x86)\Java\jre1.8.0_202\bin\keytool.exe" -delete -alias mytomcat -storepass mypassw0rd -keystore c:\users\username\AppData\LocalLow\Sun\Java\Deployment\security\trusted.certs
Das Konfigurieren in der Systemsteurung ändert nur Einstellungen der 64-Bit-Version.
Die 32-Bit-Version muss manuell konfiguriert werden.
Datei C:\Users\benutzername\AppData\LocalLow\Sun\Java\Deployment\Deployment.properties
ändern:
Proxy direkt:
deployment.proxy.type=0
Proxy per wpad:
deployment.proxy.type=2 deployment.proxy.auto.config.url=http://wpad/wpad.dat