Kako saznati kojoj .jar datoteci pripada određena Java klasa

časovi prikaza jar

Jedan od problema s kojim se uvijek susrećemo programeri softvera To je poremećaj i vrlo je jednostavno započeti s rasipanjem datoteka po cijelom sustavu nakon što počnemo testirati različite verzije naših programa (na primjer kada modificiramo neke funkcije u njemu). I isto se događa sa datoteke izvornog koda, koji mogu ugostiti različite razrede i tada nam je teško pronaći kojem može pripadati.

U slučaju Java, najčešća je potreba pronađite kojoj JAR datoteci pripada određena Java klasa kako bi se riješili tipični problemi 'NoClassDefFoundError' nešto što na sreću nije previše komplicirano kao što ćemo vidjeti u nastavku. Ali prije toga ćemo to objasniti JAR-ovi su u osnovi komprimirane datoteke, tako da je mogućnost da ih možemo pregledati, dekompresija ili traženje alternative koja nam omogućava da 'pogledamo' u njih.

Da bismo to učinili, možemo izvršiti sljedeće, pod pretpostavkom da ćemo pregledati datoteku zvanu otpornik (to je iz vrlo jednostavne aplikacije koju sam stvorio za izračunavanje vrijednosti otpora), ali naravno u svakom slučaju ona se zamjenjuje sa imenom datoteke koju želimo pregledati:

$ jar tvf otpornik.jar

Rezultat će biti onaj koji vizualiziramo na gornjoj slici koja prati ovaj post i tamo gdje jesmo vidljive sve datoteke koje čine određeni JAR, među kojima su naravno poznati .class koji čine klase aplikacije, pomoću kojih ćemo napokon znati koje su datoteke koje sadrže klase koje tražimo.

Sada, iako u slučaju Linuxa uvijek imamo pred sobom način na koji radimo stvari s terminala, mnogim korisnicima je praktičnije raditi ih iz grafičke aplikacije, čak i ako to podrazumijeva instaliranje dodatnog softvera na njihov sistem. Za njih imamo program pod nazivom jar-explorer, koji nam omogućava da istražimo JAR datoteke kako bismo pregledali sav njihov sadržaj, a dobra stvar je što imamo integrirani alat za pretraživanje, koji nam nudi rekurzivna pretraživanja Java klasa.

To je aplikacija razvijena, naravno, u Java, pa da ga instalirate u Ubuntu izvršavamo:

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

Sada, nakon što aplikacija počne, ono što moramo učiniti je otići na opciju Datoteka -> Pronađi korijenski direktorij ili Jar datotekui odaberite direktorij u kojem imamo JAR datoteke. Spisak svih datoteka vidjet ćemo u odjeljku 'Jar spisak datoteka', a zatim sve što treba da uradimo je da unesemo ime klase koju tražimo, što radimo u tekstualnom polju smještenom desno od 'Unesite klasu za pretraživanje'na vrhu ekrana. Na kraju kliknite na dugme 'Start' da započnete pretragu koja neće trajati više od sekundi.

Ali jar-explorer Još uvijek ima još jednu karakteristiku koja nam može biti vrlo korisna, a to je omogućite nam da istražimo sadržaj svake definicije klase u Javi, nešto što možemo postići samo klikom na naziv klase (iz prethodnih rezultata pretraživanja).

To je sve, kao što vidimo, ovo su dva različita, ali potpuno valjana pristupa pretraživanju Java klasa među našim JAR datotekama, zadatak u koji programeri padaju više puta i koji ne mora biti dosadan ili složen.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.