Wie erstelle ich Maven-Projekte? [Mit Codierungsbeispielen]
Veröffentlicht: 2020-09-14In diesem Artikel behandeln wir einige allgemeine Fragen zu Maven, wie z. B. „Was ist Maven?“. und entdecken Sie, wie Sie an Maven-Projektideen arbeiten können. Sie erfahren, wie Sie Maven-Projekte starten und mit welchen Grundlagen Sie vertraut sein sollten.
Inhaltsverzeichnis
Was ist Maven?
Apache Maven ist ein Projektmanagement-Tool für Java-basierte Projekte. Es begann als Werkzeug zur Bearbeitung von Aufgaben im Jakarta Turbine-Projekt. Die Entwickler von Maven wollten eine Standardmethode zum Erstellen und Verwalten des Projekts, da es unter Jakarta Turbine verschiedene Projekte gab. Als Ergebnis erstellten sie Maven, das zu einem der beliebtesten Tools von Apache geworden ist.
Maven-Projekte sind einfacher zu erstellende Prozesse und haben dafür einheitliche Systeme. Der Zugriff auf Projektinformationen ist mit Maven aufgrund seiner ordnungsgemäßen und unkomplizierten Speichermethode sehr einfach.
Maven erstellt Projekte über POM (Project Object Model) , wodurch die Einheitlichkeit aller Maven-Projekte sichergestellt wird. Wenn Sie in der Vergangenheit an einem Maven-Projekt gearbeitet haben, werden Sie bei der Arbeit an einem anderen keine Schwierigkeiten haben. Dies ist einer der Hauptgründe, warum Maven bei Entwicklern so beliebt wurde.
Wie erstelle ich Maven-Projekte?
Bevor Sie Ihr Projekt in Maven erstellen, benötigen Sie einen Ort, an dem es gespeichert werden kann. Also erstellen wir ein Verzeichnis und starten dort eine Shell. Um all dies zu tun, müssen Sie Ihre Befehlszeile öffnen und das folgende Maven-Ziel ausführen:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

Denken Sie daran, dass die Ausführung des Codes einige Zeit in Anspruch nehmen kann, wenn Sie ihn direkt nach der Installation von Maven ausführen. Dies geschieht, weil Maven die neuesten Plugin-Jars und andere relevante Artefakte in Ihr ausgewähltes Repository herunterlädt. Manchmal müssen Sie den Befehl möglicherweise mehrmals ausführen, damit er erfolgreich ist. Das passiert, weil ihre Remote-Server manchmal eine Zeitüberschreitung haben, aber es ist kein ernstes Problem, und Sie können es beheben.
Nachdem Sie den oben erwähnten Befehl ausgeführt haben, sehen Sie das folgende Verzeichnis mit der gleichen ArtifactId. Das Verzeichnis wäre:
cd meine-app
Sie würden sehen, dass das Verzeichnis die folgende Projektstruktur hat:
meine App
|– pom.xml
`– src
|– Haupt
| `-Java
| `-com
| `– meinefirma
| `– App
| `– App.java
`– testen
`-Java
`-com
`– meinefirma
`– App
`– AppTest.java
Hier enthält das Verzeichnis src/main/java den Quellcode, pom.xml ist das Projektobjektmodell und src/test/java enthält die Testquelle.
Unser Code führt das Ziel archetype:generate aus. Unser Code übergibt auch mehrere Parameter an dieses Ziel. Das Präfix „Archetyp“ ist der Name des Plugins, das das Ziel vorgibt. Unser Ziel archetype:generate erstellt also ein kleines und einfaches Projekt, das auf maven-archetype-quickstart basiert. Wir können sagen, dass Plugins nur mehrere Ziele sind, die für eine bestimmte Aufgabe gruppiert sind.
Lesen Sie: Bibliotheksverwaltungssystem-Projekt in Java
Was ist POM?
Es ist das Zentrum von Maven-Projekten und deren Konfiguration. Die Datei pom.xml ist eine Konfigurationsdatei, die die meisten notwendigen Informationen zum Erstellen eines Projekts auf Ihre gewünschte Weise speichert. Die POM-Datei kann ziemlich umfangreich und komplex sein, aber es ist nicht erforderlich, ihre technischen Aspekte zu kennen, um sie richtig zu verwenden. Die POM für unser Projekt ist die folgende:
<Projekt xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-Instanz”
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>com.mycompany.app</groupId>
<artifactId>meine-app</artifactId>
<version>1.0-SNAPSHOT</version>

<Eigenschaften>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</Eigenschaften>
<Abhängigkeiten>
<Abhängigkeit>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<Version>4.12</Version>
<scope>test</scope>
</Abhängigkeit>
</Abhängigkeiten>
</Projekt>
Hier ist ein einfacher Durchlauf der wesentlichen POM-Elemente:
- project : Das höchste Element in jeder pom.xml-Datei
- groupId : Die Kennung der Erstellergruppe des Projekts. Sie ist immer eindeutig und eine der wichtigsten Kennungen eines Projekts.
- url : Zeigt den Standort (die Website) des Projekts an.
- modelVersion : Zeigt die Version des Objektmodells an, das das aktuelle POM verwendet. Obwohl sich die Version des Objektmodells nicht oft ändert, ist sie entscheidend, um das Projekt stabil zu halten.
- build : Es führt Aufgaben im Zusammenhang mit der Verwaltung von Plugins, der Deklaration der Verzeichnisstruktur usw. aus.
- version : Zeigt die Version des Artefakts an, die Ihr Projekt generiert hat. Die Versionsverwaltung ist ziemlich knifflig, und Apache Maven hilft Ihnen dabei erheblich.
Es gibt viele POM-Elemente, und wenn Sie an vielen Maven-Projektideen arbeiten möchten, ist es am besten, sich mit ihnen vertraut zu machen. Sie müssen jedoch nicht mit allen vertraut sein, wenn Sie ein Anfänger sind.
Erstellen von Maven-Projekten
Nach dem, was wir im vorherigen Abschnitt gemacht haben, müssten Sie die folgende Befehlszeile verwenden:
mvn-Paket
Es werden mehrere Aktionen mit dem folgenden Ende gedruckt:
…
[DIE INFO] ------------------------
[INFO] ERFOLG BAUEN
[DIE INFO] ------------------------
[INFO] Gesamtzeit: 2,953 s
[INFO] Beendet am: 2019-11-24T13:05:10+01:00
[DIE INFO] ------------------------
Sie fragen sich vielleicht, warum dieser Befehl kein Präfix hatte (wie archetype:generate). Das liegt daran, dass es eine Phase und kein Ziel ist. Ein Build-Lebenszyklus ist eine ordnungsgemäße Abfolge verschiedener Phasen. Maven führt Phasen in der von Ihnen bereitgestellten Anordnung aus.
Checkout: Wie man Java-Projekte codiert, kompiliert und ausführt

Verwendung von Maven mit Java 9 (oder späteren Versionen)
Wenn Sie Java 9 oder neuere Versionen verwenden möchten, müssen Sie Version 3.6.0 von maven-compiler-plugin verwenden und maven.compiler.release auf die gewünschte Java-Version setzen. Das liegt daran, dass die Standardversion von Maven ältere Versionen von maven-compiler-plugin verwendet, die mit Java 9 und späteren Versionen nicht kompatibel sind. Hier ist ein Beispiel für die Verwendung von Maven mit späteren Java-Versionen:
- <Eigenschaften>
- <maven.compiler.release>11</maven.compiler.release>
- </Eigenschaften>
- <bauen>
- <Plugin-Verwaltung>
- <Plugins>
- <Plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <Version>3.8.1</Version>
- </Plugin>
- </Plugins>
- </pluginManagement>
- </bau>
Da alle Maven-Projektideen auf Java basieren, wäre es am besten zu wissen, wie man dieses Tool mit späteren Versionen verwendet.
Erfahren Sie mehr über Maven
Maven ist ein fantastisches Tool für jeden Softwareprofi oder Projektmanager. Es hilft Ihnen nicht nur, die Dinge überschaubar zu halten, sondern hält sie auch einfach und leicht verständlich. Sie können viel über Apache Maven lernen, indem Sie an einigen Maven-Projektideen arbeiten.
Wir hoffen, dass Sie diesen Artikel nützlich fanden. Wenn Sie irgendwelche Gedanken oder Fragen haben, können Sie uns dies über die Kommentare mitteilen. Wir würden uns freuen, von Ihnen zu hören.
Wenn Sie mehr über Full-Stack-Softwareentwicklung erfahren möchten, sehen Sie sich das PG-Diplom in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen, mehr als 9 Projekte und mehr bietet Aufgaben, IIIT-B-Alumni-Status, praktische praktische Schlusssteinprojekte und Arbeitsunterstützung bei Top-Unternehmen.