Java 8 Update 25 per GPO ausrollen


sehr verwirrender ArtikelNaja, ganz OKbrauchbar für Checker...guter Artikelsehr guter Artikel - Danke [9 Bewertung, Durchschnitt: 4,33]

UPDATE:
ACHTUNG – ACHTUNG – ACHTUNG!

Wir haben nun die Vorgangsweise des Rollouts von JAVA grundlegend geändert!!!
Die neue, von uns empfohlene Methode wird hier beschrieben!

Diese neue Methode funktioniert getestet für die Versionen
JAVA 8 Update 66
JAVA 8 Update 71
JAVA 8 Update 91

—————————————

Für Interessierte folgend der ursprüngliche Artikel:

Die übliche Vorgangsweise, um Java per Gruppenrichtlinien auszurollen war bisher, den offline-Installer bei JAVA downzuloaden, den installer zu starten – und nach dem ersten Stopp der Installation (“Willkomen bei Java” bla bla) das .msi – Paket im Ordner

C:\Users\administrator\AppData\LocalLow\Sun\Java\jre1.8.0_25
zu suchen – und dann per GPO auszurollen
Warum Sun nicht einfach gleich das .msi zum Download anbietet wird ein ewiges Rätsel bleiben…

Leider ist das derzeit von SUN angebotene .msi NICHT geeignet, per GPO ausgerollt zu werden, da es erhöhte Rechte (=Administratoren) benötigt.

Ich habe nun eine Anleitung (siehe hier) gefunden, die ich gerne – nachdem ich sie getestet habe – noch einmal kurz zusammenfassen möchte – und die dortigen Fehler ausgebessert habe.
Herzlichster Dank an den Urheber.

Step – by – Step – Anleitung: zentralisierte Installation von JAVA 8 25
[Edit: UNTEN bei den Kommentaren findet sich eine Lösung für Java 8 Update 40
Ich hatte aber noch keine Zeit, diesen Vorschlag auch zu testen...]

  1. Download des Offline-Installers bei Java (Download -> links außen -> Offline-Installationsprogramm)
  2. Installation starten, beim ersten Stopp das .msi im Ordner
    C:\Users\administrator\AppData\LocalLow\Sun\Java\jre1.8.0_25
    suchen und in einen anderen Ordner kopieren
  3. Installation abbrechen
  4. ORCA downloaden
  5. jre1.8.0_25.msi mit ORCA öffnenJava_8_25_ORCA
  6. folgende Einträge ändern:table “CustomAction”“installexe”  –> Feld “Type” ändern in 3074 (decimal)dann hinzufügen:table “Directory”Directory  = OracleDir
    Directory_Parent = CommonAppDataFolder
    DefaultDir = OracleDirectory = JavaDir
    Directory_Parent = OracleDir
    DefaultDir = Java

    table “Component”

    Component = emptycfgComponent
    ComponentId =
    Directory  = JavaDir
    Attributes =  0 (Decimal)
    Condition =
    KeyPath Field =

    table “FeatureComponent”
    Feature_ = jrecore
    Component_ = emptycfgComponent

    table “File”
    File Field = java.settings.cfg
    Component_ = emptycfgComponent
    FileName = java~1.cfg|java.settings.cfg
    FileSize Field = 0
    Version =
    Language =
    Attributes =  8192 (Decimal)
    Sequence Field = 1

    table “Media”
    DiskId Field = 2
    LastSequence Field = 1
    DiskPrompt Field =
    Cabinet Field =
    VolumeLabel Field =
    Source Field =

    table “InstallExecuteSequence”    ändern:
    “SetSilentInstall” –> UILevel=2 –> UILevel<=3

    table “Properties” (ändern bzw. fehlende Fehlder hinzufügen)

    AUTO_UPDATE=0
    AUTOUPDATECHECK=0
    JU=0
    JAVAUPDATE=0
    EULA=0
    SPONSORS=0
    WEB_JAVA_SECURITY_LEVEL=H
    WEB_ANALYTICS=0

 7. verändertes .MSI speichern und auf ein Share eines Servers kopieren

 8. in diesem Share – ausgehend vom Speicherort eurer .msi folgenden Pfad anlegen:
CommonAppData\Oracle\Java

9. in diesen neu erstellten Unterordner “Java” eine leere Datei erstellen namens
java.settings.cfg

Java_8_25_Ordner

10. Gruppenrichtlinie erstellen (COMPUTERKONFIGURATION)

Java_8_25_gpo

Letzter Tipp noch:
man kann auf einem Test-PC das .msi-Paket auch manuell starten, um zu testen, ob es Problemlos durchäuft.
Dazu sollte mit einem User, der NICHT Mitglied der Administratoren ist, folgendes in eine Command-Shell eingegeben werden (alles in 1 Zeile!):
[Tipp: davor auf C: den Ordner InstallLOG manuell erstellen, dort ist dann eine Logdatei zu finden]

msiexec /qn /a \\SERVERNAME\SHARENAME\JAVA\jre1.8.0_25.msi /Lime C:\InstallLOG\Protokolldatei.txt

nach ein paar Minuten des wartens und einem NEUSTART sollte JAVA 8 25 dann am Testrechner installiert sein.
(Anmerkung:
dieses .msi lässt sich auch installieren, wenn am Client ältere Versionen vorhanden sind – und bleiben!)

Die angesprochene Logdatei sollte so aussehen:

=== Logging started: 13.11.2014  17:22:53 ===
Action start 17:22:53: ADMIN.
Action start 17:22:53: CostInitialize.
Action ended 17:22:53: CostInitialize. Return value 1.
Action start 17:22:53: FileCost.
Action ended 17:22:53: FileCost. Return value 1.
Action start 17:22:53: CostFinalize.
Action ended 17:22:53: CostFinalize. Return value 1.
Action start 17:22:53: InstallValidate.
Action ended 17:22:53: InstallValidate. Return value 1.
Action start 17:22:53: InstallInitialize.
Action ended 17:22:53: InstallInitialize. Return value 1.
Action start 17:22:53: InstallAdminPackage.
Action ended 17:22:54: InstallAdminPackage. Return value 1.
Action start 17:22:54: InstallFiles.
Action ended 17:22:54: InstallFiles. Return value 1.
Action start 17:22:54: InstallFinalize.
Action ended 17:22:59: InstallFinalize. Return value 1.
Action ended 17:22:59: ADMIN. Return value 1.
MSI (s) (7C:90) [17:22:59:536]: Product: Java 8 Update 25 -- Installation completed successfully.

MSI (s) (7C:90) [17:22:59:551]: Das Produkt wurde durch Windows Installer installiert. Produktname: Java 8 Update 25. Produktversion: 8.0.250. 
Produktsprache: 1033. Hersteller: Oracle Corporation. Erfolg- bzw. Fehlerstatus der Installation: 0.

=== Logging stopped: 13.11.2014  17:22:59 ===

PS: Ich würde nichts lieber tun, als meine funktionierende .msi hier zum Download bereit zu stellen…

Aber aus rechtlichen Gründen bla bla bla…
Gegen eine persönliche Bitte und eine nachweisliche Spende für Ärzte ohne Grenzen kann ich aber eventuell ….


This entry was posted in Adminomat, Gruppenrichtlinie, JAVA. Bookmark the permalink.

25 Responses to Java 8 Update 25 per GPO ausrollen

  1. Pingback: Upgrade von Java 7 auf Java 8 - scriptbasiertes Deployment per MSI | IT | IMA - Informationen Mal Anders

  2. Christoph says:

    Hallo Edi
    du hast dir ja echt viel Mühe gegeben.
    Vielen Dank dafür.
    Leider funktioniert die Installation bei mir jedoch nicht wie erhofft.

    Das Log endet zwar mit den Einträgen, die Installation sei erfolgreich gewesen, jedoch stimmt das nicht.
    Die Installation dauert auch nur 2 Sekunden!!
    Irgend etwas muss noch faul sein.

    • Edi Pfisterer says:

      Ich würde wie folgt vorgehen:
      erzeugtes .msi manuell am Client starten + Reboot
      falls das nicht funktioniert:
      .msi neu zusammenstellen – evtl hast Du einen Fehler gemacht in ORCA
      falls das nicht funktioniert:
      .msi auf einem anderen Client testen

      mehr fällt mir dazu leider aktuell auch nicht ein…

      Gutes Gelingen!

    • Docolli says:

      Siehe mein Kommentar unten zur MSI Sprache.
      Ist eventuell die Ursache für dein Problem.

  3. Docolli says:

    Hallo,

    warum der Aufwand eine leere java.settings.cfg per MSI zu verteilen? Es genügt (zumindest mit dem aktuellen Java 1.8.0u31 MSI) nur die Properties im ORCA zu verändern bzw. hinzuzufügen. Die Verteilung per GPO machst du ja dann über die “Computerkonfiguration” im GPO, also auf dem Client dann Installation beim Start über das “SYSTEM”-Konto, das hat administrative Rechte.

    Dann bitte die Änderungen auch nicht direkt ins MSI schreiben, sondern als Transform (MST). Die MST-Datei kann dann mit alle zukünftigen Updates von Java8 verwendet werden! Spart die Zeit, bei jedem Update die Änderungen wieder neu ins MSI hineinzubringen. Wobei ich bei einem neuen MSI wenigstens einmal vor Verteilung das MST im ORCA anwenden lasse, um zu sehen, ob es fehlerfrei geht. Könnte ja sein, dass eine Property im MSI nicht mehr vorhanden ist, im MST aber geändert wurde. Das gibt sonst schlimme Suchen, warum die Verteilung nicht klappt ;-)

    Im GPO Editor dann auf den Reiter “Änderungen” gehen und das MST auswahlen, damit es bei der Installation auch auf das MSI angewendet wird. Ich mache übrigens für jedes Java 8 Update einen eigen Unterordner auf dem Server-Share und lege dort das MSI und das MST rein. Das MST kopiere ich kann einfach immer den neuesten Ordner rüber.

  4. Docolli says:

    Bei der Erstellung der GPO das MSI auswählen und dann unbedingt auf “Erweitert” gehen, damit man alle Optionen hat. Das ist wichtig, da das Java-MSI (wie einige ander auch!) leider die Sprachkennung “Englisch (USA)” hat. Wir haben aber ein deutsches Windows und so wird das MSI nicht installiert! Erst wenn man unter “Bereitstellung von Software” -> “Erweitert” den Haken bei “Sprache bei Bereitstellen des Pakets ignorieren” macht, klappt die Verteilung.

  5. Docolli says:

    Sorry, aber habe mich täuschen lassen (erst testen, dann schreiben !!! ;-) )). Installation der MSI über GPO ohne eine java.settings.cfg funktioniert NICHT (Fehler 1603 im Ereignisprotokoll). Oracle will wohl erzwingen, dass wir die offizielle JRE-MSI kaufen ….

    Es genügt aber die Datei “java.settings.cfg” per GPO zu verteilen:
    1) Computerkonfiguration -> Einstellungen -> Windows Einstellungen -> Dateien
    2) Neu -> Datei. Dort die Quelldatei auswählen.
    3) Als Ziel “%allusersprofile%\oracle\java\java.settings.cfg”
    4) Aktion “Aktualisieren”

    In die Datei können die Einstellungen rein.
    Was es gibt: http://docs.oracle.com/javase/8/docs/technotes/guides/install/config.html

    z.B.:
    AUTO_UPDATE=0
    EULA=0
    SPONSORS=0
    WEB_ANALYTICS=0

    Alternativ geht die Verteilung auch im Installer, dann aber auch besser als MST, als direkt im MSI.

    • Ingo Armbrust says:

      Hallo,

      hat leider mit Update 40 nicht funktioniert.


      === Logging started: 17.03.2015 11:12:50 ===
      Action start 11:12:50: ADMIN.
      Action start 11:12:50: CostInitialize.
      Action ended 11:12:50: CostInitialize. Return value 1.
      Action start 11:12:50: FileCost.
      Action ended 11:12:50: FileCost. Return value 1.
      Action start 11:12:50: CostFinalize.
      Action ended 11:12:50: CostFinalize. Return value 1.
      Action start 11:12:50: InstallValidate.
      Action ended 11:12:50: InstallValidate. Return value 1.
      Action start 11:12:50: InstallInitialize.
      Action ended 11:12:50: InstallInitialize. Return value 1.
      Action start 11:12:50: InstallAdminPackage.
      Action ended 11:12:50: InstallAdminPackage. Return value 1.
      Action start 11:12:50: InstallFiles.
      Action ended 11:12:50: InstallFiles. Return value 1.
      Action start 11:12:50: InstallFinalize.
      DEBUG: Error 2356: Couldn’t locate cabinet in stream: Data1.cab.
      MSI (s) (C4:BC) [11:12:50:870]: Product: Java 8 Update 40 — The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2356. The arguments are: Data1.cab, ,

      The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2356. The arguments are: Data1.cab, ,
      Action ended 11:12:50: InstallFinalize. Return value 3.
      Action ended 11:12:50: ADMIN. Return value 3.
      MSI (s) (C4:BC) [11:12:50:917]: Product: Java 8 Update 40 — Installation failed.

      MSI (s) (C4:BC) [11:12:50:917]: Das Produkt wurde durch Windows Installer installiert. Produktname: Java 8 Update 40. Produktversion: 8.0.400. Produktsprache: 1033. Hersteller: Oracle Corporation. Erfolg- bzw. Fehlerstatus der Installation: 1603.

      === Logging stopped: 17.03.2015 11:12:50 ===

  6. IBS says:

    Bei Java 8 u 40 funktioniert diese Anleitung nicht mehr so richtig.
    Folgender Fehler: EBUG: Error 2721: Custom action installexe not found in Binary table stream.
    Welche Einstellung im Orca muss hier verändert werden?
    Danke

  7. Axel says:

    Hallo!
    Ich habe auch Probleme die Anleitung auf Version 8 Update 40 anzuwenden.

    Die Installation endet immer mit Error 2721.

    Hat jemand eine Idee woran es liegt?

    Danke
    Axel

  8. Thomas says:

    Offensichtlich hat Oracle beim Update 40 am Installer geschraubt. Der initiale Wert im Feld Type ist jetzt nicht mehr 1026 sondern 1042. Damit funktioniert die Installation über GPO bei mir reibungslos.
    Die Config-Datei wird leider immer noch benötigt.

  9. Bernhard says:

    Hallo,

    wie Thomas schon erwähnt hat: bei Punkt 6 in der Anleitung Eintrag: table “CustomAction”“installexe” –> Feld “Type” 1042 (decimal)

  10. Holger Ronecker says:

    Ihr seit meine Götter. Ich verteile Java per Windows Update (Local Update Publisher) schon seit Version 6 und bisher bin ich an dem neuen “nach 8.20″ msi Paket verzweifelt.

    Mit Hilfe von Eurer Anleitung ist es mir gelungen 8u45 wieder ordentlich zu verteilen, vielen Dank dafür.

  11. Patrick Schöpke says:

    Hat schon jemand den Wert für “Type” von “installexe” für die aktuelle Version 1.8.0.60? Weder 1042 noch 3090 funktionieren, ich stoße immer auf den Fehler “Error 2721″.

    • Tim Gerundt says:

      Oracle scheint die MSI-Dateien weiter aufgeräumt zu haben mit Update 60. Hier fehlt jetzt das Directory “CommonAppDataFolder”:

      Directory = CommonAppDataFolder
      Directory_Parent = TARGETDIR
      DefaultDir = .:Common~1|CommonAppData

      Bei mir möchte er die Quelldatei “java.settings.cfg” jetzt aber direkt bei der MSI-Datei liegen haben. Soll mir egal sein, wenn es ansonsten funktioniert. ;-)

  12. Anonymous says:

    Hallo,

    habe es jetzt auch mit Java 8 Update 60 probiert. Die Installation wurde durchgeführt allerdings habe ich noch folgenden Fehler im Protokoll, weiss wer wieso ? (Error Code 2356):

    === Logging started: 04.09.2015 09:57:01 ===
    Action start 09:57:01: ADMIN.
    Action start 09:57:01: CostInitialize.
    Action ended 09:57:01: CostInitialize. Return value 1.
    Action start 09:57:01: FileCost.
    Action ended 09:57:01: FileCost. Return value 1.
    Action start 09:57:01: CostFinalize.
    Action ended 09:57:02: CostFinalize. Return value 1.
    Action start 09:57:02: InstallValidate.
    Action ended 09:57:02: InstallValidate. Return value 1.
    Action start 09:57:02: InstallInitialize.
    Action ended 09:57:02: InstallInitialize. Return value 1.
    Action start 09:57:02: InstallAdminPackage.
    Action ended 09:57:02: InstallAdminPackage. Return value 1.
    Action start 09:57:02: InstallFiles.
    Action ended 09:57:02: InstallFiles. Return value 1.
    Action start 09:57:02: InstallFinalize.
    DEBUG: Error 2356: Couldn’t locate cabinet in stream: Data1.cab.
    The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2356. The arguments are: Data1.cab, ,
    MSI (s) (54:E0) [09:57:02:304]: Product: Java 8 Update 60 (64-bit) — The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2356. The arguments are: Data1.cab, ,

    Action ended 09:57:02: InstallFinalize. Return value 3.
    Action ended 09:57:02: ADMIN. Return value 3.
    === Logging stopped: 04.09.2015 09:57:02 ===
    MSI (s) (54:E0) [09:57:02:336]: Product: Java 8 Update 60 (64-bit) — Installation failed.

    MSI (s) (54:E0) [09:57:02:336]: Das Produkt wurde durch Windows Installer installiert. Produktname: Java 8 Update 60 (64-bit). Produktversion: 8.0.600.27. Produktsprache: 1033. Hersteller: Oracle Corporation. Erfolg- bzw. Fehlerstatus der Installation: 1603.

  13. KhaKi says:

    sobald ich die MSI mit dem ORCA geändert und wieder abgespeichert habe, bekomme ich eine wesentlich kleinere MSI Datei zurück (52MB 1.8u60 ursprünglich und nachher 1,2MB). Mit SuperOrca ist die Dateigröße zwar gleich, aber die Installation schlägt dennoch fehl.

    Gilt die Anleitung für 64 und 32 bit Java MSI?
    Was bewirkt der Wert Type bei installexe? Auf anderen Seiten wurden andere Werte vorgeschlagen.

    Gruß

    • KhaKi says:

      Fehlermeldung lautet:
      DEBUG: Error 2705: Invalid table: Directory; Could not be linked as tree.
      MSI (s) (E4:D0) [17:56:33:942]: Product: Java 8 Update 60 — The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2705. The arguments are: Directory, ,

      Eine nicht angepasste MSI wird zwar durch GPO installiert, aber ich möchte die Settings schon gerne drin haben (Autoupdate, Silentinstall, etc)

  14. Kuh's Admin says:

    Leider klappt die Deinstallation der Vorgängerversion (8u66) nicht beim Installieren der 8u71 und 8u72. Hab einige Tests gemacht, leider erfolglos.

Hinterlasse eine Antwort