Как узнать, к какому файлу .jar принадлежит определенный класс Java

классы отображения jar

Одна из проблем, с которыми мы всегда сталкиваемся разработчики программного обеспечения Это беспорядок, и очень просто начать разбрасывать файлы по всей системе, как только мы начинаем тестировать разные версии наших программ (например, когда мы изменяем некоторые функции в ней). И то же самое происходит с файлы исходного кода, которые могут содержать разные классы, и тогда нам трудно найти, к какому из них может принадлежать каждый.

В случае Java, наиболее распространенным является необходимость найти, к какому файлу JAR принадлежит определенный класс Java для решения типичных проблем 'NoClassDefFoundError' что-то, что, к счастью, не слишком сложно, как мы увидим ниже. Но перед этим мы объясним, что JAR - это в основном сжатые файлытаким образом, чтобы иметь возможность исследовать их, альтернативой является их распаковка или поиск альтернативы, которая позволяет нам «заглянуть» внутрь них.

Для этого мы можем выполнить следующее, предполагая, что мы собираемся просмотреть файл с именем резистор (это из очень простого приложения, которое я создал для расчета значения сопротивления), но, конечно, в каждом случае он заменяется на имя файла, который мы хотим просмотреть:

$ jar tvf резистор.jar

Результатом будет тот, который мы визуализируем на верхнем изображении, которое сопровождает этот пост, и где у нас есть видны все файлы, составляющие определенный JAR, среди которых, конечно же, есть знаменитые .class, составляющие классы приложения, с помощью которых мы, наконец, узнаем, какие файлы содержат классы, которые мы ищем.

Теперь, даже несмотря на то, что в случае Linux у нас всегда есть способ делать что-то из терминала, для многих пользователей более практично делать это из графического приложения, даже если это подразумевает установку дополнительного программного обеспечения в их системе. Для них у нас есть программа под названием jar-explorer, который позволяет нам исследовать файлы JAR для просмотра всего их содержимого, и хорошо то, что у нас есть интегрированный инструмент поиска, который предлагает рекурсивный поиск классов Java..

Это приложение, разработанное, конечно, в Java, чтобы установить его в Ubuntu выполняем:

$wget http://jar-explorer.googlecode.com/files/jarexplorer-0.7-BETA.jar
$ java -jar jarexplorer-0.7-BETA.jar

Теперь, когда приложение запустится, нам нужно перейти к опции Файл -> Найти корневой каталог или файл Jarи выберите каталог, в котором находятся файлы JAR. Мы увидим список всех файлов в разделе 'Список файлов Jar', а затем все, что нам остается сделать, это ввести имя класса, который мы ищем, что мы делаем в текстовом поле, расположенном справа от "Введите курс для поиска"вверху экрана. Наконец, нажмите кнопку 'Начало' чтобы начать поиск, который займет не более секунд.

Перо банщик-исследователь У него все еще есть еще одна характеристика, которая может быть нам очень полезна, а именно: позволяют нам исследовать содержимое каждого определения класса в Java, чего мы можем достичь, просто щелкнув имя класса (из предыдущих результатов поиска).

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


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.