javap recursivo y guardar resultados en archivos con el mismo nombre

Quiero descompilar archivos .class en muchos directorios y luego guardar la salida de cada archivo en un archivo con el mismo nombre (por supuesto, con una extensión diferente). Traté de establecer classpath, pero recibo algunos errores de que uno de los directorios no se encontró, pero no tiene sentido, así que creo que estoy haciendo algo mal. (javap -classpath ruta/a/archivos/ -c *).

Quiero hacerlo usando javap, no quiero usar bibliotecas, programas, etc. Saludos.

preguntado el 28 de agosto de 12 a las 11:08

2 Respuestas

Esta es la solucion:

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

Respondido el 05 de Septiembre de 12 a las 08:09

¿Cómo se va a ejecutar esto? Parece volcar todo a la salida estándar en mi sistema, y ​​redirigir la salida a un archivo parece anular el propósito: Cajunluke

Para guardar en archivos separados:

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

Respondido el 26 de enero de 14 a las 06:01

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.