2015-01-13 3 views
0

Мне нужно декомпилировать около 1000 файлов jar. Отдельные файлы jar могут открываться с помощью JD-GUI, но я читаю справку (JD-GUI) и не понимаю, как написать скрипт для декомпиляции нескольких файлов JAR.как декомпилировать несколько файлов JAR

+0

Можете ли вы дать этому декомпилятору путь к JAR, в котором вы нуждаетесь? – roeygol

+0

-> C: \\ JARPath \\ –

+0

Пожалуйста, см. Мой ответ – roeygol

ответ

3

Скачать JAD Decompiler.

  • Unjar все файлы JAR (с помощью команды jar xvf) в какой-то каталог. Назовем это ${unjar.dir}.

  • Создайте каталог для JAD, чтобы выписать декомпилированные источники. Let's назовите это ${target.dir}.

  • Выполните следующую команду:

JAD -o -r -sjava -d $ {target.dir} $ {unjar.dir}/ /*.class**

Возможные варианты:

-o  - overwrite output files without confirmation 
-r  - restore package directory structure 
-s <ext> - output file extension (default: .jad) 
0

Найти декомпилятор, который может сделать вашу работу с помощью команды cmd, а затем собрать все ваши файлы JAR в некоторой папке.
Следующим шагом является создание минимальной java-программы, которая берет их все и использует этот cmd выше, выполняя его в другой папке.

Существует код Java для выполнения exe-файлов, таких как ручная командная строка.

+0

Да, я думаю, но какой лучший декомпилятор cmd? :) –

+0

нашел это онлайн: https://github.com/kwart/jd-cmd – roeygol

0

Вы можете написать сценарий, чтобы распаковать всю банку в одну структуру каталогов и повторно упаковать ее как один JAR.

Или вы можете написать сценарий для декомпиляции всего JAR, предполагая, что декомпилятор имеет интерфейс командной строки.

BTW JD-GUI обертывает декомпилятор интерфейса командной строки. Он сам не декомпилирует.

Смежные вопросы