Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8181061

"jar --help" renders wrong German "Umlaute"

XMLWordPrintable

      FULL PRODUCT VERSION :
      java 9-ea
      Java(TM) SE Runtime Environment (build 9-ea+169)
      Java HotSpot(TM) 64-Bit Server VM (build 9-ea+169, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 10.0.14393]

      A DESCRIPTION OF THE PROBLEM :
      "jar --help" renders wrong German "Umlaute". See following console snippet:

      jar --help
      Verwendung: jar [OPTION...] [ [--release VERSION] [-C dir] Dateien] ...
      jar erstellt ein Archiv f³r Klassen und Ressourcen und kann individuelle
      Klassen oder Ressourcen aus einem Archiv bearbeiten oder wiederherstellen.
      [...]
      Obligatorische oder optionale Argumente zu langen Optionen sind auch f³r die jeweils
       zugeh÷rigen kurzen Optionen obligatorisch oder optional.

      "java --help" renders all German "Umlaute" correctly!

      ADDITIONAL REGRESSION INFORMATION:

      java --help
      Verwendung: java [Optionen] Klasse [Argumente...]
                 (zur Ausführung einer Klasse)
         oder java [Optionen] -jar JAR-Datei [Argumente...]
                 (zur Ausführung einer JAR-Datei)
         oder java [Optionen] -p <Modulpfad> -m <Modulname>[/<Hauptklasse>] [Argumente...]
                 (zur Ausführung der Hauptklasse in einem Modul)
      [...]

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      jar --help


      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Expected to see ä ö ü and other Umlaute, instead of like "³ for ü" or "÷ for ö" in the help message. Like "java --help" does.
      ACTUAL -
      jar --help
      Verwendung: jar [OPTION...] [ [--release VERSION] [-C dir] Dateien] ...
      jar erstellt ein Archiv f³r Klassen und Ressourcen und kann individuelle
      Klassen oder Ressourcen aus einem Archiv bearbeiten oder wiederherstellen.

       Beispiele:
       # Ein Archiv namens classes.jar mit zwei Klassendateien erstellen:
       jar --create --file classes.jar Foo.class Bar.class
       # Ein Archiv mit einem vorhandenen Manifest mit allen Dateien in foo/ erstellen:
       jar --create --file classes.jar --manifest mymanifest -C foo/ .
       # Ein modulares JAR-Archiv erstellen, dessen Moduldeskriptor sich in
       # classes/module-info.class befindet:
       jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0
           -C foo/ classes resources
       # Ein vorhandenes nicht modulares JAR-Archiv in ein modulares JAR-Archiv aktualisieren:
       jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0
           -C foo/ module-info.class
       # Multi-Release-JAR-Datei erstellen, wobei einige Dateien in das Verzeichnis META-INF/versions/9 gespeichert werden:
       jar --create --file mr.jar -C foo classes --release 9 -C foo9 classes

       Hauptvorgangsmodus:

        -c, --create Archiv erstellen
        -i, --generate-index=FILE Indexinformationen f³r die angegebenen JAR-
                                   Archive generieren
        -t, --list Das Inhaltsverzeichnis f³r das Archiv auflisten
        -u, --update Ein vorhandenes JAR-Archiv aktualisieren
        -x, --extract Benannte (oder alle) Dateien aus dem Archiv extrahieren
        -d, --describe-module Print the module descriptor, or automatic module name

       In jedem Modus g³ltige Vorgangsmodifikatoren:

        -C DIR Zum angegebenen Verzeichnis wechseln und die folgende
                                   Datei aufnehmen
      -f, --file=FILE Der Name der Archivdatei
            --release VERSION Die folgenden Dateien werden in ein versioniertes Verzeichnis
                                   der JAR-Datei gespeichert (d.h. META-INF/versions/VERSION/)
        -v, --verbose Verbose-Ausgabe bei Standardausgabe generieren

       Vorgangsmodifikatoren, die nur im Erstellungs- und Aktualisierungsmodus g³ltig sind:

        -e, --main-class=CLASSNAME Der Anwendungseinstiegspunkt f³r Standalone-
                                   Anwendungen, die in einem modularen oder ausf³hrbaren
                                   JAR-Archiv geb³ndelt sind
        -m, --manifest=FILE Die Manifestinformationen aus der angegebenen
                                   Manifestdatei aufnehmen
        -M, --no-manifest Keine Manifestdatei f³r die Eintrõge erstellen
            --module-version=VERSION Die Modulversion beim Erstellen eines modularen
                                   JAR-Archivs oder Aktualisieren eines nicht modularen JAR-Archivs
            --hash-modules=PATTERN Berechnet und zeichnet die Hashes von Modulen auf,
                                   die mit einem bestimmten Muster ³bereinstimmen, und direkt oder
                                   indirekt von einem modularen JAR-Archiv abhõngen, das erstellt
                                   wird, oder einem nicht-modularen JAR-Archiv, das aktualisiert wird
        -p, --module-path Speicherort von Modulabhõngigkeit zur Generierung
                                   von Hash

       Vorgangsmodifikatoren, die nur im Erstellungs-, Aktualisierungs- und Indexgenerierungsmodus g³ltig sind:

        -0, --no-compress Nur speichern, keine ZIP-Komprimierung verwenden

       Weitere Optionen:

        -?, --help[:compat] Diese Meldung oder optional die Kompatibilitõt, Hilfe angeben
            --help-extra Hilfe zu zusõtzlichen Optionen
            --version Programmversion ausgeben

       Ein Archiv ist ein modulares JAR-Archiv, wenn der Moduldeskriptor "module-info.class"
       in der Root der angegebenen Verzeichnisse oder in der Root des JAR-Archivs selbst
       vorhanden ist. Die folgenden Vorgõnge sind nur g³ltig, wenn Sie ein modulares JAR-Archiv
       erstellen oder ein vorhandenes nicht modulares JAR-Archiv aktualisieren: "--module-version",
       "--hash-modules" und "--modulepath".

       Obligatorische oder optionale Argumente zu langen Optionen sind auch f³r die jeweils
       zugeh÷rigen kurzen Optionen obligatorisch oder optional.

      REPRODUCIBILITY :
      This bug can be reproduced always.

      CUSTOMER SUBMITTED WORKAROUND :
      Redirect message into a file "jar --help > message.txt" and open it in an edtior. Here Sublime Text 3. The editor renders the Umlaute correctly:

      Verwendung: jar [OPTION...] [ [--release VERSION] [-C dir] Dateien] ...
      jar erstellt ein Archiv für Klassen und Ressourcen und kann individuelle
      Klassen oder Ressourcen aus einem Archiv bearbeiten oder wiederherstellen.
      [...]
       Obligatorische oder optionale Argumente zu langen Optionen sind auch für die jeweils
       zugehörigen kurzen Optionen obligatorisch oder optional.

            ljiang Leo Jiang (Inactive)
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: