Bonjour,
j'ai un problème sur Maven2.
Je participe au développement d'une application web tournant sur JBoss. Elle se décompose en plusieurs projets Eclipse/Maven. Cette application accède à des ressources externalisées (non inclus dans les archives jar, war générées) afin de pouvoir les modifier facilement.
Ces ressources sont donc chargées dans le CLASSPATH avec :
URL url = ClassLoader.getSystemResource("nomFichier.properties");
Cela fonctionne parfaitement dans JBoss, car on a rajoute au CLASSPATH du run.bat, le répertoire contenant ce fichier.
Le problème vient les tests unitaires JUnit que lance Maven quand on fait un "mvn clean install".
Le test unitaire est bien lancé, mais il ne peut trouver la ressource, car à aucun endroit, on a précisé que le répertoire la contenant est dans le CLASSPATH.
A noté, que le JUnit lancé par Eclipse plante au même niveau à mois que l'on rajoute le répertoire au CLASSPATH.
Pour essayer de resoudre ce problème, j'ai essayé de créer un nouveau projet que j'appelle RESSOURCES qui contient son répertoire ressource Maven (par défaut src/main/resources). Ce répertoire contenant le fichier que je recherche dans le CLASSPATH. Je l'importe en tant que dépendance globale avec un scope de test. Résultat, le fichier de ressource est bien trouvé dans les JUnit d'Eclipse. Par contre, ca ne marche pas dans Maven, comme s'il ne prenait pas en compte le jar du projet RESSOURCES qui contient la ressource partagée.
Ma question est donc, s'il y a moyen en modifiant le pom.xml de maven de définir un répertoire à inclure dans le CLASSPATH.
Si ce n'est pas possible, alors vers qu'elle solution se tournait ?
Je pensais être bien partie avec le projet RESSOURCES, mais j'ai l'impression que je tombe dans une impasse...
Merci.
Partager