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 :

[testCompile] Impossible de compiler les classes de test


Sujet :

Maven Java

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 4
    Points : 2
    Points
    2
    Par défaut [testCompile] Impossible de compiler les classes de test
    Bonjour à tous,

    Le problème est peut-être trivial mais je commence à manquer d'idées.
    J'ai une application web en Java qui tourne avec Maven.

    La compilation des sources (mvn compile) fonctionne parfaitement mais lorsqu'il s'agit de faire de même avec les tests (mvn test ou mvn test-compile), le compilateur semble perdu (et moi aussi).

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    >mvn clean test-compile
     
    [INFO] Scanning for projects...
    [INFO] ------------------------------------------------------------------------
    [INFO] Building dkproject web application
    [INFO]    task-segment: [clean, test-compile]
    [INFO] ------------------------------------------------------------------------
    [INFO] [clean:clean]
    [INFO] Deleting file set: C:\projects\dkproject\target (included: [**], excluded: [])
    [INFO] [apt:execute {execution: default}]
    Note: Some input files use unchecked or unsafe operations.
    Note: Recompile with -Xlint:unchecked for details.
    [INFO] [resources:resources]
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 8 resources
    [INFO] Copying 0 resource
    [INFO] [compiler:compile]
    [INFO] Nothing to compile - all classes are up to date
    [INFO] [resources:testResources]
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 1 resource
    [INFO] [compiler:testCompile]
    [INFO] Compiling 17 source files to C:\projects\dkproject\target\test-classes
    [INFO] ------------------------------------------------------------------------
    [ERROR] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Compilation failure
    Failure executing javac,  but could not parse the error:
    The system cannot find the path specified.
     
     
     
    Failure executing javac,  but could not parse the error:
    The system cannot find the path specified.
     
     
    [INFO] ------------------------------------------------------------------------
    [INFO] For more information, run Maven with the -e switch
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 7 seconds
    [INFO] Finished at: Fri Jul 23 11:38:34 CEST 2010
    [INFO] Final Memory: 15M/37M
    [INFO] ------------------------------------------------------------------------
    La structure du projet respecte pourtant celle préconisée par Maven:

    |-- src
    | |-- main
    | | |-- java
    | | |-- resources
    | | |-- webapp
    | |-- test
    | | |-- java
    | | |-- resources
    |-- target
    |-- pom.xml


    Quant au POM.xml, en voici un extrait qui contient des informations sur le compilateur :

    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
    16
    17
    18
    19
    20
    21
     
    <build>
    	    <finalName>dkproject-web</finalName>
    	    <plugins>
    		    [...]
    		    <plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-surefire-plugin</artifactId>
    				<configuration>
    					<skip>true</skip>
    				</configuration>
    		    </plugin>
    		    <plugin>
    			    <artifactId>maven-compiler-plugin</artifactId>			    
    			    <configuration>
    				    <source>1.6</source>
    				    <target>1.6</target>
    			    </configuration>
    		    </plugin>
    	    </plugins>
        </build>
    A noter qu'un "Clean + Build automatically" sous Eclipse compile les classes de tests et qu'un 'mvn test' en lignes de commande fonctionne très bien par la suite (ce qui était prévisible):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [INFO] Nothing to compile - all classes are up to date
    Questions: pourquoi le compilateur n'arrive pas à compiler mes classes sous \target\test-classes?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    The system cannot find the path specified.
    De quel chemin parle-t-il ? S'il s'agit de celui des classes Java de test, elles sont sous \test\java\com\... S'il s'agit du compilateur java, il est dans la variable JAVA_HOME (et ça compile très bien les sources).

    Merci par avance

    Romm

  2. #2
    Membre actif

    Inscrit en
    Août 2002
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2002
    Messages : 302
    Points : 285
    Points
    285
    Par défaut
    salut,
    pkoi t'as mis cette config dans surefire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <configuration>
    					<skip>true</skip>
    				</configuration>
    Supprime et essaie ce que ça donne

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci Nannous pour le conseil.
    Malheureusement, ça n'a pas d'incidence. Le message d'erreur est le même.

    D'après la page officielle, le plugin Surefire intervient après la phase 'testCompile', durant la phase 'test'.

    Si je procède avec Eclipse comme décrit précédemment (avec les .class déjà compilés par Eclipse), les logs confirment cela (d'abord testCompile puis surefire):

    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
    16
    17
    18
    19
     
    [INFO] --- maven-compiler-plugin:2.0.2:testCompile (default-testCompile) @ dkproject-web ---
    [INFO] Nothing to compile - all classes are up to date
    [INFO] 
    [INFO] --- maven-surefire-plugin:2.4.2:test (default-test) @ dkproject-web ---
    Downloading: http://repo1.maven.org/maven2/org/apache/maven/surefire/surefire-junit4/2.4.2/surefire-junit4-2.4.2.pom
    2 KB downloaded at 1.4 KB/sec
    Downloading: http://repo1.maven.org/maven2/org/apache/maven/surefire/surefire-providers/2.4.2/surefire-providers-2.4.2.pom
    2 KB downloaded at 5.4 KB/sec
    Downloading: http://repo1.maven.org/maven2/junit/junit/4.0/junit-4.0.pom
    210 B downloaded at 0.6 KB/sec
    Downloading: http://repo1.maven.org/maven2/org/apache/maven/surefire/surefire-junit4/2.4.2/surefire-junit4-2.4.2.jar
    Downloading: http://repo1.maven.org/maven2/junit/junit/4.0/junit-4.0.jar
    12 KB downloaded at 6.7 KB/sec
    104 KB downloaded at 45.5 KB/sec
    [INFO] Surefire report directory: C:\projects\dkproject\target\surefire-reports
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    Je trouve ça vraiment très étrange que Maven accepte de compiler certaines classes java (les sources) et pas d'autres (les tests).
    Je continue à chercher...

    Romm

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/12/2009, 14h26
  2. Impossible de compiler la classe pour la JSP
    Par 19cmos83 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 21/05/2008, 11h25
  3. [Checkstyle] [Maven] activation du checkstyle report sur les classes de test
    Par cronoschris dans le forum Qualimétrie
    Réponses: 19
    Dernier message: 08/05/2008, 19h24
  4. Réponses: 1
    Dernier message: 02/02/2008, 12h54
  5. Réponses: 5
    Dernier message: 06/09/2007, 16h15

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