Hvordan finne ut hvilken .jar-fil en bestemt Java-klasse tilhører

jar display klasser

Et av problemene vi alltid møter programvareutviklere er forstyrrelse, og det er veldig enkelt å begynne å ha filer spredt rundt i systemet når vi begynner å teste forskjellige versjoner av programmene våre (for eksempel når vi endrer funksjonalitet i det). Og det samme skjer med kildekodefiler, som kan være vert for forskjellige klasser, og da er det vanskelig for oss å finne hvilken som hver kan tilhøre.

I tilfelle av Java, det vanligste er å trenge finn hvilken JAR-fil en bestemt Java-klasse tilhører for å løse de typiske problemene med 'NoClassDefFoundError' noe som heldigvis ikke er for komplisert, som vi vil se nedenfor. Men før det vil vi forklare det JAR er i utgangspunktet komprimerte filer, på en slik måte at for å være i stand til å undersøke dem, er et alternativ å dekomprimere dem eller se etter et alternativ som lar oss 'se' inni dem.

For dette kan vi utføre følgende, forutsatt at vi skal gjennomgå en fil som heter motstand (det er fra en veldig enkel app jeg har laget for å beregne verdien av en motstand), men selvfølgelig erstattes den i hvert tilfelle med navnet på filen vi ønsker gjennomgang:

$ jar tvf motstand.jar

Resultatet blir det vi visualiserer i det øvre bildet som følger med dette innlegget, og hvor vi har synlig alle filene som utgjør en viss JAR, blant hvilke selvfølgelig er den berømte .klassen som utgjør klassene i en applikasjon, som vi endelig vil vite hvilke filer som inneholder klassene vi leter etter.

Nå, selv om vi alltid har en måte å gjøre ting fra terminalen på Linux, er det mer praktisk å gjøre dem fra en grafisk applikasjon for mange brukere, selv om det innebærer å installere tilleggsprogramvare på systemet. For dem har vi et program som heter jar-explorer, som lar oss utforske JAR-filer for å se alt innholdet deres, og det gode er at vi har et integrert søkeverktøy som tilbyr rekursive søk i Java-klasser.

Det er en applikasjon utviklet, selvfølgelig, i Java, så å installere den i Ubuntu vi utfører:

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

Nå når applikasjonen starter, må vi gå til alternativet Fil -> Finn rotkatalog eller Jar-fil, og velg katalogen der vi har JAR-filene. Vi ser en liste over alle filene, i seksjonen 'Jar File List', og så gjenstår det bare å skrive inn navnet på klassen vi leter etter, noe vi gjør i tekstfeltet til høyre for 'Gå inn i klassen for å søke'øverst på skjermen. Til slutt klikker du på knappen 'Start' for å starte søket, som ikke tar mer enn sekunder.

Pero jar-utforsker har enda en funksjon som kan være veldig nyttig for oss, og det er la oss utforske innholdet i hver klassedefinisjon i Java, noe vi kan oppnå ved å bare klikke på kursnavnet (fra forrige søkeresultater).

Det er alt, som vi kan se, dette er to forskjellige, men helt gyldige tilnærminger for å søke etter Java-klasser blant JAR-filene våre, en oppgave der utviklere faller mer enn en gang, og som ikke trenger å være kjedelig eller komplisert.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.