Das Source Maven Plugin ist ein Maven Plugin zum erweiterten Erstellen von Artifacts vom Typ Source-JAR.

Hintergrund#

Das standardmäßige Plugin zum Erstellen von Source-JARs (org.apache.maven.plugins:maven-source-plugin) hat wenig Möglichkeiten, den Inhalt des Packages zu beeinflussen. Daher wurde das Plugin com.intersult:source-maven-plugin geschaffen.

Das Plugin ist erhältlich im Intersult Maven Repository.

Anwendung#

In der default Configuration werden die Compile Source Roots von Maven übernommen und generiert ein JAR-Artifact mit Classifier "sources" im Project Build Directory (target). Damit verhält sich das Plugin wie das Standard Plugin für Source-JARs.

Wenn keine Konfiguration im Build-Lifecycle erfolgt, kann das Plugin direkt aus der Konsole aufgerufen werden:

mvn com.intersult:source-maven-plugin:jar

In der Build-Sektion der POM-Datei kann das Plugin konfiguriert werden:

	<plugin>
		<groupId>com.intersult</groupId>
		<artifactId>source-maven-plugin</artifactId>
		<version>1.0-SNAPSHOT</version>
		<configuration>
			<filesets>
				<fileset>
					<basedir>${basedir}/src/main/java</basedir>
					<includes>
						<include>**/*.java</include>
					</includes>
					<excludes>
						<exclude>**/Test*.java</exclude>
					</excludes>
				</fileset>
			</filesets>
		</configuration>
	</plugin>

Die Plugin-Sektion kann sich, wie üblich, entweder innerhalb der Build-Plugins befinden oder innerhalb des Plugin-Management. Folgende XML-Element werden als Parameter unterstützt:

ElementErklärung
filesetsListe von Filesets, die in das Source-JAR aufgenommen werden sollen.
basedirDas Basis-Verzeichnis, ab dem die Daten in das Archiv aufgenommen werden.
includesListe von Maven üblichen Include-Mustern, mit denen die Dateien gefiltert werden können.
excludesListe von Exclude-Mustern um Dateien auszuschließen.