Question

I want to decompile .class files in many directories and then save output of every file to file with the same name (of course with different extension). I tried to set classpath, but I receive some errors that one of directories wasn't found, but it's nonsense so I think that I am doing someting wrong. (javap -classpath path/to/files/ -c *).

I want to do it using javap, I don't want to use libraries, programs, etc. Greets.

Was it helpful?

Solution

This is the solution:

javap -classpath yourjar.jar -c $(jar -tf yourjar.jar | grep class | sed 's/.class//g')

OTHER TIPS

To save to separated files:

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
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top