
Trinn-for-trinn installasjon av Maven
-
Først må vi installere Maven. Last den ned fra denne linken .
-
Deretter pakker du ut det nedlastede arkivet og setter miljøvariabelen M2_HOME til plasseringen av det utpakkede arkivet. For eksempel, C:\\Program Files\\maven\\
-
For å sikre at alt er installert, kjør følgende på kommandolinjen:
mvn -versjon
-
Hvis versjonsinformasjonen for Maven, Java osv. vises, er alt klart til bruk.
-
Åpne nå IntelliJ IDEA og lag et nytt prosjekt. I det første vinduet velger du Maven:
-
Klikk "Neste" og fyll ut vinduet som vises:
-
Deretter, som vanlig, lag et prosjekt hvor du vil.
Etter at prosjektet er opprettet, legg merke til strukturen:
- src /main/java- mappen inneholder Java-klassene
- src /main/resources- mappen inneholder ressursene som brukes av applikasjonen (HTML-sider, bilder, stilark, etc.)
- src /test- mappen er for tester
Administrere avhengigheter i Maven
Du har kanskje kommet over uttrykket "avhengighetsansvarlig". Maven vet hvordan man håndterer avhengigheter. Takket være Maven trenger du ikke å bruke mye tid på å søke på Internett etter et nødvendig bibliotek, laste det ned og deretter koble det til prosjektet ditt. I stedet legger du bare til det nødvendige biblioteket til listen over avhengigheter i Maven.Avhengigheter er spesifisert i avhengighetsnoden til pom.xml-filen
La oss si at du trenger Apache Commons IO-biblioteket i prosjektet ditt for å forenkle arbeid med filer. For å legge til et bibliotek, skriver vi fem linjer i pom.xml:
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
Nå skal pom.xml-filen din se slik ut:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Etter det, la IntelliJ IDEA importere avhengigheten (en dialogboks skal vises i nedre høyre hjørne). Nå er biblioteket klart til bruk:
import org.apache.commons.io.FileUtils;
import java.io.File;
public class TestMaven {
public static void main(String[] args) {
File tempDirectory = FileUtils.getTempDirectory();
}
}
Alle påfølgende avhengigheter må også skrives inne i <dependencies>
taggen. Du lurer kanskje på hvordan du finner ut informasjonen om biblioteket som du må angi inne i taggen <dependency>
. Det er enkelt. Tre parametere må alltid angis: "groupId", "artifactId" og "version". Det er to måter å bestemme disse parameterne på:
-
På bibliotekets hjemmeside. Hvis vi trenger Apache Commons IO-biblioteket, går vi til den offisielle nettsiden og velger fanen "Dependency Information". All nødvendig informasjon er her - du kan ganske enkelt kopiere den og legge den til noden
<dependencies>
. -
I et Maven-lager . Skriv inn "apache commons io" i søkefeltet og du vil se alle tilgjengelige versjoner av biblioteket. Etter å ha valgt den riktige, kopierer du bare følgende:
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency>
og legg den til pom.xml.
Typer Maven-depoter
Det er verdt for oss å nevne Maven-depoter igjen, fordi vi faktisk har to av dem: et eksternt (sentralt) depot og et lokalt (på datamaskinen din) depot. Alle biblioteker du legger til i prosjektene dine, lagres i det lokale depotet. Når Maven legger til en nødvendig avhengighet til et prosjekt, sjekker den først om biblioteket allerede eksisterer i det lokale depotet. Den får tilgang til det eksterne depotet bare hvis det ikke finner biblioteket lokalt. Som du kan se, kan du bruke Maven til å legge til avhengigheter, men dette er ikke alt det kan gjøre.Bygge et Java-prosjekt ved hjelp av Maven
Denne muligheten kan virke meningsløs for en nybegynner. Hvorfor trenger vi dette hvis vi har en IDE? La meg forklare. For det første kan det hende at serveren der du skal bygge applikasjonen din verken har et utviklingsmiljø eller et grafisk grensesnitt. For det andre, på store prosjekter, gjør Maven en bedre jobb med å bygge prosjektet. Så uten ytterligere adieu, vil vi vurdere prosessen med å bygge en applikasjon ved hjelp av Maven.Faser
Prosessen med å bygge en applikasjon er kjent for et Maven-prosjekts livssyklus, og den består av faser. Du kan se på dem i IDEA ved å klikke Maven > eksempel > Livssyklus i øvre høyre hjørne:
- clean — fjerner alle kompilerte filer fra målkatalogen (stedet der ferdige artefakter lagres)
- validere — sjekker om all informasjonen som kreves for å bygge prosjektet er til stede
- kompiler — kompilerer kildekodefiler
- test — starter tester
- pakke — pakker kompilerte filer (i et JAR-, WAR-, etc.-arkiv)
- verify — sjekker om den pakkede filen er klar
- installer — plasserer pakken i det lokale depotet. Nå kan det brukes av andre prosjekter som et eksternt bibliotek
- nettsted — lager prosjektdokumentasjon
- distribuere — kopierer det innebygde arkivet til det eksterne depotet
-
gjennom kommandolinjen:
mvn pakke
-
bruker IntelliJ IDEA:
Før pakkefasen starter, utføres validerings-, kompilerings- og testfasene. Den rene fasen er et unntak. Det er en god idé å kjøre denne fasen før hver bygging av prosjektet. Du kan liste opp flere faser, separere dem med mellomrom:
mvn ren pakke.
Plugins
For å legge til en Maven-plugin til prosjektet, må vi legge til beskrivelsen til pom.xml-filen, ved å bruke<build>
og <plugins>
-tagger, på samme måte som vi la til avhengigheter. Anta for eksempel at vi trenger en plugin for å bekrefte at vi bruker den nyeste versjonen av alle våre eksterne biblioteker. Etter litt søk på Internett kunne du finne denne plugin-en og instruksjoner om hvordan du bruker den. La oss angi groupId, artifactId og versjon. Vi vil indikere hvilke mål plugin-en må oppfylle og i hvilken fase. I vårt tilfelle er avhengighetskontrollen i gjeldende pom.xml satt til å skje under valideringsfasen. Nå ser pom.xml-filen vår slik ut:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>com.soebes.maven.plugins</groupId>
<artifactId>uptodate-maven-plugin</artifactId>
<version>0.2.0</version>
<executions>
<execution>
<goals>
<goal>dependency</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Vi kunne fortsette å jobbe med prosjektet vårt. Men la oss prøve å endre versjonen av Apache Commons IO til 2.0 og bygge prosjektet. Vi får
[ERROR] Failed to execute goal com.soebes.maven.plugins:uptodate-maven-plugin:0.2.0:dependency (default) on project example: There is a more up-to-date version ( 2.6 ) of the dependency commons-io:commons-io:2.0 available. -> [Help 1]
Her har vi en byggefeil generert av plugin-en. Feilmeldingen sier at vi bruker versjon 2.0 når versjon 2.6 er tilgjengelig. I utgangspunktet er Maven et veldig nyttig verktøy. Kanskje det vil virke vanskelig å bruke i begynnelsen, men øv! Lag prosjektene dine med Maven, og etter en stund vil du være veldig fornøyd med sluttresultatet. Denne artikkelen utelot bevisst mange detaljer om Maven - vi fokuserte på det mest essensielle. Men det er ingen grense for forbedring: du kan lese mer om Maven på dens offisielle nettside . Del 5. Servlets og Java Servlet API. Skrive en enkel nettapplikasjon Del 6. Servlet-beholdere Del 7. Introduserer MVC-mønsteret (Model-View-Controller)
GO TO FULL VERSION