Vind ongebruikte Maven-afhankelijkheden

1. Overzicht

Wanneer we Maven gebruiken om onze projectafhankelijkheden te beheren, kunnen we uit het oog verliezen welke afhankelijkheden in onze applicatie worden gebruikt.

In deze korte zelfstudie bespreken we hoe u de Maven-afhankelijkheidsplug-in kunt gebruiken, een plug-in die ons helpt om ongebruikte afhankelijkheden in ons project te vinden.

2. Projectconfiguratie

Laten we beginnen met het toevoegen van een aantal afhankelijkheden, slf4j-api (degene die we zullen gebruiken) en gemeenschappelijke collecties (degene die we niet zullen gebruiken):

  commons-collecties commons-collecties 3.2.2 org.slf4j slf4j-api 1.7.25 

We hebben toegang tot de Maven-afhankelijkheidsplug-in zonder deze op te geven in onze pom. In ieder geval kunnen we de pom.xml definitie om de versie te specificeren en ook enkele eigenschappen indien nodig:

   maven-afhankelijkheid-plugin 3.1.2 

3. Codevoorbeeld

Nu we ons project hebben opgezet, laten we een regel code schrijven waarin we een van de afhankelijkheden gebruiken die we eerder hebben gedefinieerd:

openbare Logger getLogger () {retourneer LoggerFactory.getLogger (UnusedDependenciesExample.class); }

De LoggerFactory uit de Slf4J-bibliotheek wordt geretourneerd in een methode, maar er wordt geen gebruik gemaakt van de bibliotheek met gemeenschappelijke verzamelingen, waardoor deze in aanmerking komt voor verwijdering.

4. Zoek ongebruikte afhankelijkheden

Met behulp van de Maven-afhankelijkheidsplug-in kunnen we de afhankelijkheden vinden die niet in ons project worden gebruikt. Daarvoor gebruiken we het analysedoel van de plug-in:

$ mvn afhankelijkheid: analyse [INFO] --- maven-dependency-plugin: 3.1.1: analyse (default-cli) @ maven-ongebruikte-afhankelijkheden --- [WAARSCHUWING] Ongebruikte gedeclareerde afhankelijkheden gevonden: [WAARSCHUWING] commons-collecties : commons-collections: jar: 3.2.2: compileren [INFO] ----------------------------------- ------------------------------------- [INFO] SUCCES BOUWEN [INFO] ----- -------------------------------------------------- ----------------- [INFO] Totale tijd: 1.225 s [INFO] Beëindigd op: 2020-04-01T16: 10: 25-04: 00 [INFO] --- -------------------------------------------------- -------------------

Voor elke afhankelijkheid die niet in ons project wordt gebruikt, geeft Maven een waarschuwing af in het analyserapport.

5. Specificeer Afhankelijkheden zoals gebruikt

Afhankelijk van de aard van het project, moeten we soms klassen tijdens runtime laden, zoals bijvoorbeeld in een op plug-in georiënteerd project.

Omdat de afhankelijkheden niet worden gebruikt tijdens het compileren, is het maven-afhankelijkheid-plugin zou een waarschuwing geven waarin staat dat een afhankelijkheid niet wordt gebruikt, terwijl dat in feite wel het geval is. Daarvoor kunnen we de plug-in afdwingen en instrueren dat een bibliotheek wordt gebruikt.

We doen dit door de afhankelijkheden binnen het usedAfhankelijkheden eigendom:

 org.apache.maven.plugins maven-dependency-plugin commons-Collections: commons-Collections 

Het uitvoeren van het analyseren doel opnieuw zien we dat de ongebruikte afhankelijkheid niet langer in het rapport wordt meegenomen.

6. Conclusie

In deze korte tutorial hebben we geleerd hoe we ongebruikte maven-afhankelijkheden kunnen vinden. Het is een goede gewoonte om regelmatig te controleren op ongebruikte afhankelijkheden, aangezien dit de onderhoudbaarheid verbetert en de bibliotheekgrootte van ons project verkleint.

Zoals altijd is de volledige broncode met alle voorbeelden beschikbaar op GitHub.


$config[zx-auto] not found$config[zx-overlay] not found