IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Maven Java Discussion :

2 dossiers de source dans le même projet


Sujet :

Maven Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 71
    Par défaut 2 dossiers de source dans le même projet
    Bonjour,

    Je suis chargé de migrer un projet sous Maven, sans toucher à l'arborescence du projet. J'ai uniquement le droit d'ajouter des pom.xml

    Voici l'architecture (non standard Maven) des projets:

    Web
    |-src
    |-applets

    UnitTest
    |-fakeSourceDir
    |-src

    (Il y a d'autres projets à coté mais je ne mets que le nécessaire à la compréhension du problème)

    Web contient 2 dossiers de sources : src et applets. Pour faire reconnaître les 2 dossiers de source, j'utilise build-helper-maven-plugin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <plugin>
    	<groupId>org.codehaus.mojo</groupId>
    	<artifactId>build-helper-maven-plugin</artifactId>
    	<executions>
    		<execution>
    			<phase>generate-sources</phase>
    			<goals><goal>add-source</goal></goals>
    			<configuration>
    				<sources>
    					<source>applets</source>
    				</sources>
    			</configuration>
    		</execution>
    	</executions>
    </plugin>
    Le problème: je ne parviens pas à faire reconnaître le 2ème dossier de sources dans le projet de tests unitaires

    Comme vous le voyez, pour faire passer la pillule à Maven sur le projet de tests unitaires, j'ai créé un faux dossier de sources (fakeSourceDir) et c'est le dossier "src" qui contient effectivement les tests :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <build>
    	<sourceDirectory>fakeSourceDir</sourceDirectory>
    	<testSourceDirectory>src</testSourceDirectory>
    ...
    Lors de la compilation et de l'exécution des tests unitaires, les classes situées dans Web/applets ne sont pas trouvées.
    Quelqu'un a une idée? un goal/phase pas bonne?

    Je précise que j'ai également tenté de réutiliser build-helper-maven-plugin pour ajouter ../Web/applets comme 2ème dossier de source de UnitTests... sans succès.

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bonjour,

    Ta configuration sur le projet Web semble bonne.
    Est-ce que le package généré (un .jar ?) sur Web contient bien les classes des 2 répertoires ?

    Comment définis-tu la dépendance de UnitTest sur Web ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 71
    Par défaut
    Web est référencé dans UnitTest de la façon suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <dependency>
      <groupId>myGroup</groupId>
      <artifactId>Web</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <type>war</type>
      <scope>test</scope>
    </dependency>
    J'ajoute 2 précisions:
    - le projet Web génère un WAR (peut-on réutiliser les classes d'un WAR dans un autre projet Maven? ça me parait bizarre)
    - UnitTest n'utilise aucune classe du dossier src de Web, donc potentiellement, UnitTest ne voit pas du tout Web, mais je ne sais pas pourquoi

Discussions similaires

  1. émission et réception dans le même projet
    Par jleil dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 05/06/2008, 22h15
  2. Cohabitation Struts 1 et 2 dans un même projet ?
    Par vgiraudon dans le forum Struts 2
    Réponses: 5
    Dernier message: 15/01/2008, 14h56
  3. Réponses: 8
    Dernier message: 11/12/2007, 10h10
  4. Réponses: 2
    Dernier message: 05/05/2006, 15h10
  5. Réponses: 5
    Dernier message: 07/09/2004, 17h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo