Сравните файлы .class Beyond Compare 4

Я использую Beyond Compare 4 (4.1.9) для сравнения военных файлов.

Мне нужно сравнить файлы .class, которые я нахожу в нескольких пакетах.

  1. Как я могу сравнить их с помощью этого продукта (Beyond Compare 4)?
  2. В противном случае есть другой продукт, который может сравнить военный файл и скомпилировать файлы .class?

person pacio14    schedule 06.12.2016    source источник


Ответы (4)


Двойной щелчок по файлу войны в сравнении папок Beyond Compare развернет его как папку, потому что файлы войны по сути являются zip-файлами.

Чтобы декомпилировать файлы классов Java в исходный код в Beyond Compare, установите формат файлов Java Class to Source. При установленном формате файла, когда вы дважды щелкните файл .class внутри архива .war, он отобразит декомпилированный исходный код в текстовом сравнении Beyond Compare.

Страница загрузки для форматов файлов: http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4

Обратите внимание, что преобразование класса Java в исходный файл доступно только для Windows и недоступно для версий Beyond Compare для Linux или Mac.

person Chris Kennedy    schedule 07.12.2016

  1. Загрузите формат файла Java Class to Source с http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4

  2. В Beyond Compare выберите Инструменты | Импорт настроек.

  3. Заполните загруженное имя файла, нажмите «Далее» и продолжите, чтобы закончить.

person ChandraBhan Singh    schedule 25.09.2019

Недавно я столкнулся с необходимостью сравнить файлы классов в Beyond Compare 4 и обнаружил, что добавления внешней программы и использования javap -l -p -c -constants %s > %t 2>&1 мне достаточно. Просто убедитесь, что достаточно недавний javap является одним из PATH, который понимает любой из форматов файлов классов, которые вы хотите сравнить. Не требует дополнительного программного обеспечения и совместим с разными платформами.

person Ray    schedule 20.06.2020

Опция: javap -l -p -c -constants %s › %t 2›&1 : у меня не работает на BeyondCompare4 4.3.7 (последняя версия на сегодняшний день), и при прямом использовании через cmd дает .class вывод, но форматирование плохое, и на самом деле это не интерпретируется для чтения Java, которым я являюсь.

Возможность загрузки формата через http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4: у меня тоже не работает. Эта библиотека основана на http://varaneckas.com/jad, которая довольно старая.

Вариант, который я рекомендую и который сработал: Загрузите https://github.com/kwart/jd-cli (проект, основанный на знаменитом декомпиляторе Java или jd-gui, как мы его знаем). После установки выполните следующие действия в BeyondCompare4: перейдите в формат, создайте новый формат, используйте внешнюю программу и используйте следующее: C:\Users%USERNAME%\jd-cli-1.2.0-dist\jd-cli .bat %s › %t 2›&1

Надеюсь, это поможет некоторым.

person Codizon    schedule 16.06.2021