Announcement

Collapse
No announcement yet.

Komprimierung von vielen jar files entfernen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Komprimierung von vielen jar files entfernen

    Guten Abend,

    wir haben auf einem Linux-System mehrere Hundert jar files liegen, von denen einige komprimiert sind, andere wiederrum nicht - je nach Laune der verschiedenen Entwickler ;-) Da wir in sämtlichen jar files bestimmte Strings per grep auslesen müssen und das bei den komprimierten nicht funktioniert, suche ich eine Möglichkeit, bei sämtlichen jar Files die Komprimierung - quasi in einem Rutsch - zu entfernen, ohne alle einzeln neu zu kompilieren. Auf Anhieb würde mir nur einfallen, alle einzeln mit jar zu entpacken und dann wieder ohne Komprimierung neu zu packen, das erscheint mir jedoch relativ aufwändig. Gibt es eine elegantere Lösung dafür? Gern auch an Kopien der jar files, so daß das Original unberührt bleibt Bin für jeden effektiven Tip dankbar! ;-)

  • #2
    Ich bin weder großer Linux noch Java Experte, aber das klingt doch nach einem relativ einfachen Shell Skript. Einmal entpacken und wieder packen falls das mit JARs so einfach geht. Ich denke nicht dass man irgendwo einfach ein Flag ändern kann. Das File muss ja tatsächlich neu generiert werden damit die Komprimierung auch tatsächlich in Kraft tritt.

    Comment


    • #3
      zgrep kann auch mit Komprimierung umgehen.

      Comment


      • #4
        Mit
        http://docs.oracle.com/javase/tutori...ar/unpack.html
        auspacken und gleich wieder mit
        http://docs.oracle.com/javase/tutori...jar/build.html
        einpacken ohne Kompression, mit einem Script wie von fanderlf vorgeschlagen
        Zuletzt editiert von Christian Marquardt; 26.04.2014, 14:36.
        Christian

        Comment


        • #5
          zgrep findet seltsamerweise nichts in den komprimierten jar files :-(
          Das mit dem aus- und einpacken per Script war auch unse Vorstellung davon. Ich habe jetzt nur mal unter Windows mit dem jar-Befehl rumgespielt und mir ist aufgefallen, dass der Inhalt der jar Files immer dorthin entpackt wird, wo die jar.exe rumliegt, einen Parameter zum Angeben eines Zielordners habe ich nirgends gefunden, vielleicht ist das ja unter Linux anders. Ich werde das Montag mal testen. Trotzdem Danke für die Tipps ;-)

          Comment


          • #6
            Ich glaube nicht dass er das dorthin packt wo die jar.exe liegt sondern in den Pfad in dem du aktuell bist. So habe ich zumindest die Doku verstanden:

            http://docs.oracle.com/javase/tutori...ar/unpack.html

            Sofern Du die nicht parallel entpacken willst kannst Du einfach einen leeren Ordner nehmen, dort reingehen und dort die jar.exe aufrufen (mit Pfad oder eintragen in die PATH variable damit sie überall verfügbar ist). Dann hast Du ein jar File entpackt und musst nur denselben Ordner wieder in ein .jar packen und das alte File damit überschreiben. Testweise natürlich erstmal nur auf einer Kopie oder mit Versionskontrolle. Aber das muss ich Dir hoffentlich nicht sagen

            Comment

            Working...
            X