Das [Source Maven Plugin] ist ein [Maven Plugin|Maven] 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:

||Element||Erklärung
|filesets|Liste von Filesets, die in das Source-JAR aufgenommen werden sollen.
|basedir|Das Basis-Verzeichnis, ab dem die Daten in das Archiv aufgenommen werden.
|includes|Liste von Maven üblichen Include-Mustern, mit denen die Dateien gefiltert werden können.
|excludes|Liste von Exclude-Mustern um Dateien auszuschließen.