Как да разберете към кой .jar файл принадлежи определен клас Java

класове за показване на бурканчета

Един от проблемите, с които винаги се сблъскваме разработчици на софтуер Това е тази на разстройството и е, че е много лесно да започнете да разпръсквате файлове в цялата система, след като започнем да тестваме различни версии на нашите програми (например, когато модифицираме някои функционалности в нея). И същото се случва с файлове с изходен код, които могат да приемат различни класове и тогава ни е трудно да намерим към кой от тях може да принадлежи.

В случай на Ява, най-често срещаната е да има нужда намерете към кой JAR файл принадлежи определен клас Java с цел решаване на типичните проблеми на „NoClassDefFoundError“ нещо, което за щастие не е твърде сложно, както ще видим по-долу. Но преди това ще обясним това JAR са основно компресирани файлове, по такъв начин, че да можем да ги изследваме, алтернатива е да ги декомпресираме или да потърсим алтернатива, която ни позволява да „погледнем“ вътре в тях.

За това можем да изпълним следното, ако приемем, че ще прегледаме файл, наречен резистор (създаден съм от много просто приложение, за да изчислим стойността на съпротивлението), но разбира се във всеки случай той се заменя с името на файла, който искаме да прегледаме:

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

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

Сега, въпреки че в случая на Linux винаги имаме пред себе си начин да правим нещата от терминала, за много потребители е по-практично да ги правят от графично приложение, дори ако това предполага инсталиране на допълнителен софтуер в тяхната система. За тях имаме програма, наречена jar-explorer, който ни позволява да изследваме JAR файлове, за да видим цялото им съдържание, а хубавото е, че имаме интегриран инструмент за търсене, който предлага рекурсивни търсения на Java класове.

Това е приложение, разработено, разбира се, в Ява, така че да го инсталирате в Ubuntu изпълняваме:

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

След като приложението стартира, това, което трябва да направим, е да отидем на опцията за Файл -> Намерете коренна директория или Jar файли изберете директорията, в която имаме JAR файловете. Ще видим списък с всички файлове в раздела 'Jar File List', а след това остава само да въведем името на класа, който търсим, което правим в текстовото поле, разположено вдясно от „Въведете клас за търсене“в горната част на екрана. Накрая кликнете върху бутона "Старт" за да започне търсенето, което ще отнеме не повече от секунди.

Pero буркан-изследовател Все още има още една характеристика, която може да ни бъде много полезна и това е позволяват ни да изследваме съдържанието на всяка дефиниция на клас в Java, нещо, което можем да постигнем, като просто кликнете върху името на класа (от предишните резултати от търсенето).

Това е всичко, както виждаме, това са два различни, но напълно валидни подхода за търсене на Java класове сред нашите JAR файлове, задача, при която разработчиците попадат повече от веднъж и която не трябва да бъде досадна или сложна.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

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