« Importation » Maven dépendances de ressources?
-
26-10-2019 - |
Question
À travers plusieurs projets que j'ai une ressources (en particulier les scripts de migration de base de données) que je voie de migration voudrais partager.
Est-il possible d'avoir ces ressources partagées exister en tant que artefact Maven, et avant une construction ont détermination Maven que la dépendance et déballer le contenu de l'artefact à /src/main/resources/
? Si oui, comment peut-on prendre?
La solution
Si vous placez des fichiers dans /src/main/resources
ils seront placés sur le CLASSPATH dans l'artefact JAR cible. Cela signifie que si vous dépendez d'un tel artefact, vous aurez accès à toutes les ressources, comme vous avez accès à des cours en elle.
<dependency>
<groupId>com.example.foo</groupId>
<artifactId>my-resources</artifactId>
<version>0.1</version>
</dependency>
Si l'artefact my-resources
contient des ressources /src/main/resources
, vous pouvez y accéder lors de l'exécution comme vous (ou toute autre bibliothèque) peuvent accéder au contenu de /src/main/resources
du même artefact.
Notez que cela ne fonctionnera pas avec /src/test/resources
parce que les ressources de test sont placées sur CLASSPATH lors de l'exécution de surefire
d'artefact courant.