Was ist die bequemste Methode, um den Inhalt einer .jar-Datei ohne Verwendung von unzip / untar-Befehlen anzuzeigen? Was ich tun möchte, ist, mit dem cd
Befehl darin zu surfen, als wäre es der übliche Ordner, der den Inhalt und die Größe der Klassen anzeigt 'ls -la'
.
MC
erlaubt, dies im laufenden Betrieb zu tun. Gibt es eine benutzerfreundliche Alternative?
unzip -l
tut zeigen Ihnen die Größe der Dateien im Archiv sowie Datum und Uhrzeit der letzten Änderung , ohne das Paket auspacken. Siehe meine Antwort unten. Eigentlich ist dies ist ein Duplikat als ekaj vorgeschlagen.Antworten:
Verwenden Sie das mit dem Java SDK gelieferte JAR-Tool, um den Inhalt einer JAR-Datei aufzulisten. Wie in http://docs.oracle.com/javase/7/docs/technotes/tools/windows/jar.html beschrieben
quelle
Mit vim können Sie den Inhalt einer JAR-Datei anzeigen und bearbeiten, ohne Folgendes zu extrahieren:
Öffne das Glas in vim so:
Sie erhalten eine Liste mit Dateien:
Bewegen Sie den Cursor über
META-INF/MANIFEST.MF
und drücken Sie Enter. Du siehst das:Ändern Sie einige Zeilen mit den normalen vim-Bearbeitungsbefehlen.
Sie gelangen zurück zu einer Liste der Dateien in der JAR-Datei. Beenden Sie die JAR-Datei.
Überprüfen Sie, ob die Änderungen dauerhaft sind:
quelle
Dieser hat mir immer gereicht:
unzip -l <jarfile>
quelle
Ich denke,
.jar
Dateien sind im Grunde genommen.zip
Dateien. Also, ich denke, Fuse-Zip könnte funktionieren.quelle
Benennen Sie einfach die JAR-Datei in eine ZIP-Datei um. IE,
test.jar
zutest.zip
. Sie können alle kompilierten Klassen sehen. Wenn Sie die Quelle jedoch selbst anzeigen möchten, benötigen Sie einen Dekompiler.quelle
Sie können ein ssh-Mount verwenden , um das Dateisystem des Servers lokal zu haben. Danach können Sie mit jeder lokal verfügbaren Software durch das Dateisystem navigieren, z. B.
Far Manager
ist es sehr leistungsfähig, in Archive zu navigieren.In dieser Lösung benötigen Sie keine zusätzliche Software auf dem Server, nur sshd.
quelle
Falls Sie den Inhalt in der Reihenfolge des Datums sehen möchten, wie ich es getan habe:
jar tvf jarfile.{e,j,w}ar | sort -k 7,7 -k 3,3M -k 4,4n -k5,5
quelle
jar tvf jarfile.jar
jar xvf jarfile.jar
quelle