[MAVEN] Question de package avec les sous modules [Resolu]

Question de package avec les sous modules [Resolu] [MAVEN] - Java - Programmation

Marsh Posté le 31-08-2007 à 11:31:45    

Bonjour
 
J'ai un module contenant des sous modules
 
CRM
 |____ Fonction
 |____ Model
 
le super POM et sous POM fonctionnent tres bien , j otiens bien le jar pour chaque sous module
 
Je souhaiterais maintenant rajouter un sous module qui ne contiendra pas de code java, mais un POM qui génèrera une librairie à partir des librairies de mes sous modules Fonction et Model.
 
Est ce que c'est possible ?
 
Merci


Message édité par Lenoiche le 03-09-2007 à 18:02:47
Reply

Marsh Posté le 31-08-2007 à 11:31:45   

Reply

Marsh Posté le 03-09-2007 à 17:23:25    

j ai trouvé une solution
 
en créeant une nouveau sous module et les tâche ant
 
dans le nouveau sous module déclaré les dépendances vers les sous modules Fonction et Model
ensuite lancer une tache ANT pour copier les code sources des ces derniers dans le nouveau sous module à une phase avant la compilation (par exemple la phase de validation)
 
la compilation se fait
 
il suffira de supprimer le répertorie du code source
 
voila le pom.xml
 

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
  5.           http://maven.apache.org/maven-v4_0_0.xsd">
  6. <parent>
  7.  <groupId>CRM</groupId>
  8.  <artifactId>crm.risqueclient</artifactId>
  9.  <version>1.0-SNAPSHOT</version>
  10. </parent>
  11. <modelVersion>4.0.0</modelVersion>
  12. <groupId>fr.axabanque</groupId>
  13. <artifactId>execution-regles-risques</artifactId>
  14. <name>${pom.artifactId}</name>
  15. <version>${parent.version}</version>
  16. <packaging>jar</packaging>
  17. <!-- Dépendances vers les sous modules du projets -->
  18. <dependencies>
  19.  <dependency>
  20.   <groupId>CRM</groupId>
  21.   <artifactId>CRM.model</artifactId>
  22.  </dependency>
  23.  <dependency>
  24.   <groupId>CRM</groupId>
  25.   <artifactId>CRM.fonctions</artifactId>
  26.  </dependency>
  27. </dependencies>
  28. <!-- configuration du packaging -->
  29. <build>
  30.  <plugins>
  31.   <!-- Appel d'une Tache ANT -->
  32.   <plugin>
  33.    <artifactId>maven-antrun-plugin</artifactId>
  34.     <executions>
  35.     <execution>
  36.      <!-- ID de la tâche Ant -->
  37.      <id>copy</id>
  38.      <!-- Définition de la phase lors de laquelle la tâche sera exécuté, ici avant la compilation -->
  39.       <phase>validate</phase>
  40.       <configuration>
  41.        <tasks>
  42.         <!-- supression de répertoire src qui aurait pu subsiter lors d'un plantage précédent de la compilation -->
  43.         <delete dir="..\execution-regles-risques\src" />
  44.         <!-- création d'un nouveau répertoire src -->
  45.         <mkdir dir="..\execution-regles-risques\src" />
  46.         <!-- copie des fichiers sources des sous modules à compiler et à packager -->
  47.         <copy todir="..\execution-regles-risques\src">
  48.          <fileset dir="..\Model\src">
  49.           <include name="**/*.*" />
  50.          </fileset>
  51.          <fileset dir="..\Fonctions\src">
  52.           <include name="**/*.*" />
  53.          </fileset>
  54.          </copy>
  55.         </tasks>
  56.      </configuration>
  57.       <goals>
  58.       <goal>run</goal>
  59.      </goals>
  60.     </execution>
  61.     <execution>
  62.      <id>delete</id>
  63.      <!-- Définition de la phase lors de laquelle la tâche sera exécuté, ici après la compilation -->
  64.      <phase>package</phase>
  65.      <configuration>
  66.      <tasks>
  67.       <!--apres la compilation du code source, supression de répertoire src  -->
  68.       <delete dir="..\execution-regles-risques\src" />
  69.      </tasks>
  70.      </configuration>
  71.      <goals>
  72.       <goal>run</goal>
  73.      </goals>
  74.     </execution>
  75.    </executions>
  76.   </plugin>
  77.  </plugins>
  78. </build>
  79. </project>


Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed