Allgemein
Knowledge Base
- Neue Struktur (In Arbeit)
- Computertechnisches
Community
Privat
Maven ist ein modernes Buildtool, das nach richtiger Konfiguration der pom.xml
und Aufruf über die Shell, die Abhängigkeiten auflöst und benötigte Libraries aus dem Internet runterlädt.
Ist die Kurzfassung, es wird wirklich nur das nötigste beschrieben
Sehr ausführlich beschrieben. default ist der Standard und enthält z.B. die Phase compile die das Projekt baut, package packt das Archiv zusammen, in target ist dann ein WAR File zu finden. install installiert das Archiv in das lokale Repository.
groupId, eine artifactId und eine version. Damit wird bei Maven alles identifiziert.
<groupId>de.elsniwiki</groupId> <!-- hier z.B. den Packagenamen verwenden -->
<packaging>jar</packaging> <version>1.0-SNAPSHOT</version>
Hint: Leider kann man die Koordinaten so schreiben, das sie nichts mit der zugrunde liegenden Filestruktur zu tun haben, was gerne für große Verwirrung sorgt.
Maven arbeitet nach Convention over configuration, alles ist festgelegt, es sei den man konfiguriert es um. Man sollte sich an die Verzeichnisstruktur von Maven gewöhnen, so findet man sich schnell in allen Maven Projekten zurecht.
jar ist im Ergebnis genau eine jar Datei
war ist ein War File für JEE (gezippter Klotz mit vielen jar Dateien)
pom es wird kein Archiv gebaut, nur Module sollte man angeben, so kann man beliebige andere Mavenprojekte immer weiter schachteln oder zusammenstellen.
...
...
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<fork>true</fork>
<compilerArgument>-verbose -Xmx768m</compilerArgument>
<!-- <meminitial>128m</meminitial> -->
<!-- <maxmem>1024m</maxmem> -->
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
mvn versions:display-dependency-updates mvn versions:display-plugin-updates mvn versions:use-latest-versions setzt alles auf die letzte Version