Kuinka selvittää, mihin .jar-tiedostoon tietty Java-luokka kuuluu

purkkien esittelyluokat

Yksi ongelmista, joita kohtaamme aina ohjelmistokehittäjät Se on häiriö, ja on erittäin helppoa aloittaa tiedostojen hajauttaminen koko järjestelmään, kun alamme testata ohjelmiemme eri versioita (esimerkiksi kun muokkaamme joitain sen toimintoja). Ja sama tapahtuu lähdekooditiedostot, joka voi isännöidä erilaisia ​​luokkia, ja meidän on sitten vaikea löytää, mihin kukin voi kuulua.

Tapauksessa Jaava, yleisin on tarvetta löytää, mihin JAR-tiedostoon tietty Java-luokka kuuluu - tyypillisten ongelmien ratkaisemiseksi 'NoClassDefFoundError' jotain, joka onneksi ei ole liian monimutkaista, kuten näemme alla. Mutta ennen sitä selitämme sen JAR-tiedostot ovat periaatteessa pakattuja tiedostoja, niin että voimme tutkia niitä, vaihtoehto on purkaa ne tai etsiä vaihtoehtoa, jonka avulla voimme "katsoa" heidän sisälle.

Tätä varten voimme suorittaa seuraavat olettaen, että tarkastelemme tiedostoa nimeltä vastus (vastusarvon laskemiseksi olen luonut hyvin yksinkertaisen sovelluksen), mutta tietysti joka tapauksessa se korvataan tarkistettavan tiedoston nimi:

$ jar tvf vastus. jar

Tulos on se, jonka visualisoimme tämän viestin mukana olevassa yläkuvassa ja missä meillä on näkyvät kaikki tiedostot, jotka muodostavat tietyn JAR: n, joiden joukossa on tietysti kuuluisa .luokka, jotka muodostavat sovelluksen luokat, joiden avulla tiedämme vihdoin tiedostot, jotka sisältävät etsimämme luokat.

Vaikka Linuxin tapauksessa meillä on aina tapa tehdä asioita terminaalista, monille käyttäjille on käytännöllisempää tehdä ne graafisella sovelluksella, vaikka se merkitsisi lisäohjelmistojen asentamista heidän järjestelmäänsä. Heille meillä on ohjelma nimeltä jar-explorer, jonka avulla voimme tutkia JAR-tiedostoja nähdäksesi kaiken niiden sisällön, ja hyvä asia on, että meillä on integroitu hakutyökalu, joka tarjoaa rekursiivisia hakuja Java-luokille.

Se on tietysti kehitetty sovellus Jaava, joten asenna se Ubuntu me toteutamme:

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

Nyt, kun sovellus käynnistyy, meidän on tehtävä vaihtoehto Tiedosto -> Etsi juurihakemisto tai Jar-tiedostoja valitse hakemisto, jossa meillä on JAR-tiedostot. Näemme luettelon kaikista tiedostoista osiossa 'Jar-tiedostoluettelo', ja sitten meidän on vain syötettävä etsimäsi luokan nimi, jonka teemme tekstikenttään, joka sijaitsee 'Kirjoita luokka etsimään', näytön yläreunassa. Napsauta lopuksi painiketta 'Alkaa' aloittaaksesi haun, joka kestää enintään sekunteja.

Mutta purkitutkija Sillä on edelleen yksi ominaisuus, josta voi olla paljon hyötyä meille, ja se on anna meidän tutkia kunkin Java-luokan määritelmän sisältöä, minkä voimme saavuttaa napsauttamalla vain luokan nimeä (edellisistä hakutuloksista).

Siinä kaikki, kuten näemme, nämä ovat kahta erilaista, mutta täysin pätevää lähestymistapaa Java-luokkien etsimiseen JAR-tiedostoistamme, tehtävään, johon kehittäjät kuuluvat useammin kuin kerran, eikä sen tarvitse olla työläs tai monimutkainen.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.