Hur man tar reda på vilken .jar-fil en viss Java-klass tillhör

burk display klasser

Ett av problemen som vi alltid står inför mjukvaruutvecklare Det är det av oordning, och det är att det är väldigt enkelt att börja ha filer spridda över hela systemet när vi börjar testa olika versioner av våra program (till exempel när vi ändrar en del funktioner i det). Och detsamma händer med källkodsfiler, som kan vara värd för olika klasser och då är det svårt för oss att hitta vilken som alla kan tillhöra.

I fallet med java, det vanligaste är att behöva hitta vilken JAR-fil en viss Java-klass tillhör för att lösa de typiska problemen med 'NoClassDefFoundError' något som lyckligtvis inte är så komplicerat som vi kommer att se nedan. Men innan det kommer vi att förklara det JAR är i grunden komprimerade filer, på ett sådant sätt att för att kunna undersöka dem, är ett alternativ att dekomprimera dem eller leta efter ett alternativ som tillåter oss att "titta" inuti dem.

För att göra detta kan vi utföra följande, förutsatt att vi kommer att granska en fil som heter resistor (det är från en mycket enkel app som jag har skapat för att beräkna värdet på ett motstånd), men naturligtvis byts det ut i varje fall med namnet på filen som vi vill granska:

$ jar tvf resistor.jar

Resultatet blir det vi visualiserar i den övre bilden som åtföljer detta inlägg, och var vi har synlig alla filer som utgör en viss JAR, bland vilka naturligtvis är den berömda .klassen som utgör klasserna i en applikation, med vilken vi äntligen vet vilka filer som innehåller de klasser vi letar efter.

Nu, även om vi i Linux alltid har ett sätt att göra saker från terminalen, är det för många användare mer praktiskt att göra dem från en grafisk applikation, även om det innebär att installera ytterligare programvara på deras system. För dem har vi ett program som heter jar-explorer, som låter oss utforska JAR-filer för att se allt deras innehåll, och det goda är att vi har ett integrerat sökverktyg som erbjuder rekursiva sökningar i Java-klasser.

Det är en applikation som naturligtvis utvecklats i java, så att installera den i ubuntu vi utför:

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

När applikationen startar, måste vi välja alternativet Arkiv -> Hitta rotkatalog eller Jar-filoch välj den katalog där vi har JAR-filerna. Vi kommer att se en lista över alla filer i avsnittet 'Jar File List', och allt som återstår för oss att göra är att ange namnet på den klass vi letar efter, vilket vi gör i textfältet till höger om "Ange klass för att söka"högst upp på skärmen. Klicka slutligen på knappen 'Start' för att påbörja sökningen, vilket tar högst några sekunder.

Men jar-utforskare Det har fortfarande en annan egenskap som kan vara mycket användbar för oss och det är låt oss utforska innehållet i varje klassdefinition i Java, något vi kan uppnå genom att bara klicka på klassnamnet (från tidigare sökresultat).

Det är allt, som vi kan se, det här är två olika men helt giltiga metoder för att söka efter Java-klasser bland våra JAR-filer, en uppgift där utvecklare faller mer än en gång och det behöver inte vara tråkigt eller komplicerat.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.