2016-03-15 11 views
0

Я хочу перечислить классы в баночках, которые используют метод java.lang.String.replace.Как напечатать класс, данные метода в файле jar с помощью javap?

jar tvf <JAR> | awk '{print $8}' | grep class$ | sed 's/\.class$//' | xargs javap 

Место, где <JAR> - название банка, которую вы хотите изучить.

+0

Извлеките файлы классов из файла jar, затем используйте 'javap' в файлах классов. –

ответ

-1

Возможно, это не самый простой способ (и, к сожалению, без javap).

С помощью jQAssistant вы можете построить базу данных neo4j, содержащую все ваши классы, методы (и многие другие) в виде вершин и некоторые отношения с ребрами. Методы связаны ребрами с меткой INVOKES (см. http://buschmais.github.io/jqassistant/doc/1.1.2/#:Java:Method).

Итак, вы можете использовать jQAssistant для инициализации базы данных. После этого вам нужно создать несколько новых egdes (используя «понятия»). Затем вы можете выбрать все классы, которые используют метод String.replace.

Существует плагин maven для jQAssistant. При этом легко попробовать.

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

  • Нет связанных вопросов^_^