【发布时间】:2012-08-28 10:04:08
【问题描述】:
我想反编译多个目录中的 .class 文件,然后将每个文件的输出保存到同名文件(当然扩展名不同)。我试图设置类路径,但我收到一些错误,即找不到目录之一,但这是无稽之谈,所以我认为我做错了。 (javap -classpath path/to/files/ -c *).
我想使用 javap 来做,我不想使用库、程序等。问候。
【问题讨论】:
我想反编译多个目录中的 .class 文件,然后将每个文件的输出保存到同名文件(当然扩展名不同)。我试图设置类路径,但我收到一些错误,即找不到目录之一,但这是无稽之谈,所以我认为我做错了。 (javap -classpath path/to/files/ -c *).
我想使用 javap 来做,我不想使用库、程序等。问候。
【问题讨论】:
这是解决方案:
javap -classpath yourjar.jar -c $(jar -tf yourjar.jar | grep class | sed 's/.class//g')
【讨论】:
保存到单独的文件:
for i in $(jar -tf yourjar.jar | grep class | sed 's/.class//g') ; do mkdir -p $(dirname $i) ; javap -cp yourjar.jar -c $i > $i.javap ; done
【讨论】: