Maven-plugins og mål
Tilpass bygget
Maven-plugins og mål er en gratis leksjon i Java Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Java Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Java Academy inneholder totalt 4 leksjoner.
Maven-programtillegg og mål
Maven selv gjør nesten ingenting — alt det faktiske arbeidet utføres av programtillegg. Et programtillegg bidrar med mål, og mål knyttes til livssyklusfaser. Denne leksjonen viser hvordan programtillegg tilpasser en bygging.
Programtillegg kontra mål
Et programtillegg er en pakket samling av beslektede funksjoner. Et mål er én bestemt oppgave i et programtillegg. Compiler Plugin tilbyr for eksempel målene compile og testCompile.
Målkoordinater
De kan starte et mål direkte som plugin:goal. For eksempel mvn compiler:compile eller mvn surefire:test. Vanligvis kjøres mål automatisk fordi de er knyttet til faser.
Fasetilknytninger
Standardtypen for pakking knytter standardprogramtillegg til faser på forhånd. For et jar-prosjekt knyttes Compiler Plugins compile-mål til fasen compile, og Surefire Plugins test-mål knyttes til test — derfor fungerer mvn test uten videre.
Konfigurere kompilatoren
De konfigurerer et programtillegg innenfor <build><plugins>. Her angir vi Java-utgivelsesnivået, slik at kompilatoren målretter en bestemt versjon.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<release>21</release>
</configuration>
</plugin>
</plugins>
</build>Surefire Plugin
Surefire kjører enhetstester under fasen test. De kan konfigurere hvilke tester som skal inkluderes, parallellitet og JVM-argumenter. Søsterprogramtillegget Failsafe kjører integrasjonstester i fasen verify.
Knytte en ekstra execution
En <execution>-blokk knytter et mål eksplisitt til en fase, eventuelt med egen konfigurasjon. Slik kobler De til ekstra arbeid, for eksempel generering av kode før kompilering.
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>print-banner</id>
<phase>generate-sources</phase>
<goals><goal>run</goal></goals>
</execution>
</executions>
</plugin>Bygge en fat JAR
Standard-JAR-filen inneholder ikke avhengigheter. Shade-programtillegget (eller Assembly-programtillegget) samler alt i én kjørbar uber-jar og knytter målet til fasen package.
Exec Plugin
Exec-programtillegget lar Dem kjøre applikasjonen fra Maven med mvn exec:java ved å angi hovedklassen. Praktisk for raske kjøringer uten pakking.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<configuration>
<mainClass>com.example.App</mainClass>
</configuration>
</plugin>Programtilleggsstyring
I en bygging med flere moduler fastsetter <pluginManagement> i den overordnede POM-en programtilleggsversjoner og delt konfigurasjon. Underordnede moduler refererer deretter til programtillegget uten å gjenta versjonen, slik at byggingene blir konsistente.
Finne konfigurasjon
Bruk mvn help:describe -Dplugin=compiler for å vise målene og parameterne til et programtillegg. Dette er den raskeste måten å finne ut hvilke innstillinger et programtillegg tilbyr, uten å forlate terminalen.
Kort kontroll
Test forståelsen Deres av programtillegg og mål.
Oppsummering
De har lært hvordan Maven-programtillegg fungerer:
- Alt faktisk byggearbeid utføres av programtillegg, som bidrar med mål.
- Mål er knyttet til livssyklusfaser, slik at standardfasene fungerer uten videre.
- Konfigurer programtillegg i
<build><plugins>; legg til executions for ekstra tilknytninger. - Shade/Assembly bygger fat JAR-filer; Exec kjører appen; Surefire/Failsafe kjører tester.
mvn help:describeviser målene og parameterne til et programtillegg.
Lær deg Java med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 104
- Leksjoner
- 374
Ofte stilte spørsmål
Er leksjonen «Maven-plugins og mål» gratis?
Ja – hele teksten i «Maven-plugins og mål» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Java Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Java Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Maven-plugins og mål»?
Tilpass bygget Du øver på Java Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Java Academy?
Ingen tidligere erfaring er nødvendig. Java Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Maven-plugins og mål»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Java Academy-leksjonen?
Ja. Alle Java Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Maven-prosjektstruktur
- Maven-plugins og mål
- Grunnleggende Gradle
- Velge et byggeverktøy