Ich mag Maven. Ich mag es sogar sehr sehr. Seit ich von Ant auf das System umgestiegen bin, habe ich viele Arbeitsstunden eingespart, Baudateien erstellt, Abhängigkeiten verwaltet usw. und viel Platz in meinem Quellcodeverwaltungs-Repository gespart.Verringerung der Ausführlichkeit von Maven pom.xml-Dateien (oder: eine Kritik von Maven von einem Fan)
Das Problem ist, dass Maven-Dateien zu ausführlich sind. Nicht, dass Ant-Dateien weniger ausführlich waren, aber ihre Ausführlichkeit war angemessen für das, was sie tun.
Zum Beispiel anstelle des Schreibens:
<dependencies>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
<dependency>
<groupId>com.myosproject</groupId>
<artifactId>superlibrary</artifactId>
<version>7.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
Ich möchte etwas schreiben wie
<dependencies>
commons-logging/commons-logging/1.1.1
com.myosproject/superlibrary/7.5
test:junit/junit/3.8.1
</dependencies>
Oder statt
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
Ich möchte
<build version="1.5"/>
Und (letztes Beispiel und wir sind fertig), statt des Schreibens:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>native2ascii-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>UTF8</encoding>
</configuration>
</execution>
</executions>
</plugin>
ich nichts nicht zu haben, schreiben möchten . Das heißt, Maven würde das Vorhandensein des Ordners native2ascii erkennen und das Richtige tun standardmäßig.
Ich weiß, dass ich integrierte Funktionalität mit Plugins und anderen Dingen mische, aber bitte versuchen Sie aus der Sicht eines Maven-Benutzers, der sehr glücklich mit dem Tool ist, aber denkt, er könnte glücklicher sein.
So:
Gibt es eine Möglichkeit, ich Maven konfigurieren kann, so zu arbeiten? (Und wäre es klug, dies zu tun)
Gibt es vielleicht ein anderes Werkzeug, das mir nicht bewusst ist, dass das tut?
+ 1 für den guten Geist Ihrer Frage :) –