Допустим, у меня есть файл .war
myWarFile.war
В этом файле есть файл jar - WEB-INF / myJarFile.jar
Я хочу посмотреть, какие файлы находятся внутри myJarFile.jar, не распаковывая файл war.
Есть ли способ сделать это?
jar xvf thewar.war /path/to/jar/inside/war #extract the file... jar tvf /path/to/jar/indide/war.jar # read the extracted jar rm /path/to/jar/inside/war # remove it
Я только что сделал это, и он не удалил файл, извлеченный из войны. Пожалуйста, проверьте это, хотя ...;)
Если вы открываете войну в 7-zip, вы также можете открывать вложенные банки.
Я всегда использую этот скрипт, когда хочу найти или найти все классы и другие файлы на пути к классам в войне (хотя он извлекает файл войны)
#!/bin/bash # # Unzips all the libs in a war set -o errexit set -o nounset mkdir -p contents cd contents unzip $1 mkdir -p jars cd jars for jar in ../WEB-INF/lib/*.jar; do basejar=$(basename $jar) mkdir -p "$basejar" unzip -o "$jar" -d "$basejar" done
Архивированный архив (.war больше ничего) содержит оглавление и упакованные файлы.Невозможно получить доступ к содержимому любого из упакованных файлов без предварительного их извлечения.