Das mathcoach-resources-maven-plugin
hat die Aufgabe die verteilten
Resourcen (Dateien zur Laufzeit, JavaScript, Bilder, Dokumentation, …)
in ein Zielverzeichnis zu kopieren. Dabei wird ein
convention-over-configuration Ansatz verwendet: Jedes Artefakt, das
Resourcen anbietet, muss diese in einem bestimmten Verzeichnis in
src/main/resources/
hinterlegen. Dieses Verzeichnis lässt sich
über den Parameter resourcesRoot
konfigurieren und ist standardmäßig
auf mc-resources
festgelegt (Resourcen sollen also in src/main/resources/mc-resources/
abgelegt werden).
Das Zielverzeichnis, in das alle
Resourcen kopiert werden sollen, lässt sich mit dem Parameter toDir
konfigurieren (Standard: ${project.build.directory}/${project.artifactId}-${project.version}/
).
Damit die Resourcen von Fremdartefakten ignoriert werden, gibt es eine
Whitelist, mit der Artefakt-Koordinaten (mittels String.match
,
Format: groupId:artifactId:version
) abgeglichen werden.
Note
|
Es sollten die Standardkonfiguration verwendet werden, da |
Beispiel:
<plugin>
<groupId>de.htwsaar</groupId>
<artifactId>mathcoach-resources-maven-plugin</artifactId>
<version>...</version>
<configuration>
<whitelistArtifacts>
<arg>de\.htwsaar:.*:.*</arg>
</whitelistArtifacts>
</configuration>
<executions>
<execution>
<id>collect files for documentation and runtime</id>
<configuration>
<!--<toDir>${project.build.directory}/${project.artifactId}-${project.version}/</toDir>-->
<!--<resourcesRoot>mc-resources</resourcesRoot> "src/main/resources/" + "mc-resources" = root for files to copy-->
</configuration>
<phase>compile</phase>
<goals>
<goal>collect-resources</goal>
</goals>
</execution>
</executions>
</plugin>