【发布时间】:2010-07-13 14:42:00
【问题描述】:
假设我有一个 .war 文件
myWarFile.war
这个文件里面有一个jar文件——WEB-INF/myJarFile.jar
我想在不提取war文件的情况下查看myJarFile.jar中的文件。
有办法吗?
【问题讨论】:
标签: jar
假设我有一个 .war 文件
myWarFile.war
这个文件里面有一个jar文件——WEB-INF/myJarFile.jar
我想在不提取war文件的情况下查看myJarFile.jar中的文件。
有办法吗?
【问题讨论】:
标签: jar
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 打开战争,你也可以打开嵌套的罐子。
当我想在战争中搜索或 grep 类路径上的所有类和其他文件时,我总是使用这个脚本(虽然它确实提取了战争文件)
#!/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 不是别的)包含目录和打包文件。如果不先提取它们,就无法访问任何打包文件的内容。
【讨论】: