J'ai un problème avec maven. Lorsque j'essaie de compiler des classes de test (mvn test-compile
), il ne parvient pas à trouver les classes testées utilisées dans les classes de test. Par exemple la classe UserTest
ne peut pas être compilée car le compilateur ne peut pas trouver la classe User
qui est utilisée dans la classe UserTest
. Le problème est le plus probable dans le chemin de la classe ne comprenant pas le dossier cible pendant la phase test-compile
, ce qui est bizarre parce que je pensais que maven l'incluait.Maven ne voit pas les classes testées
Si quelqu'un avait des idées pour résoudre ce problème, je serais reconnaissant.
Le fichier pom.xml peut être trouvé ici http://github.com/tomasherman/JBTBackup/blob/master/pom.xml, tout comme le reste du projet.
La sortie Maven est la suivante:
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building JBTBackup Maven Webapp
[INFO] task-segment: [test-compile]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 3 resources
[WARNING] While downloading hibernate:hibernate:3.0.5
This artifact has been relocated to org.hibernate:hibernate:3.0.5.
[INFO] [compiler:compile {execution: default-compile}]
[INFO] No sources to compile
[INFO] [resources:testResources {execution: default-testResources}]
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/arg/workspace/JBTBackup/src/test/resources
[INFO] [sql:execute {execution: add-test-data}]
[INFO] Executing file: /tmp/pre-test-editdb.1278025605sql
[INFO] 0 of 0 SQL statements executed successfully
[INFO] [compiler:testCompile {execution: default-testCompile}]
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[INFO] Compiling 2 source files to /home/arg/workspace/JBTBackup/target/test-classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[26,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[27,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[28,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[23,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[25,15] cannot find symbol
symbol : class BTFile
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[26,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[27,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[28,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[23,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
[ERROR] /home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[25,31] cannot find symbol
symbol : class BTFile
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
[INFO] 10 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Compilation failure
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[26,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[27,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[28,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[23,15] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[25,15] cannot find symbol
symbol : class BTFile
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[26,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[27,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/UserTest.java:[28,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.UserTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[23,29] cannot find symbol
symbol : class User
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
/home/arg/workspace/JBTBackup/src/test/java/org/tomasherman/JBTBackup/Resource/Entity/BTFileTest.java:[25,31] cannot find symbol
symbol : class BTFile
location: class org.tomasherman.JBTBackup.Resource.Entity.BTFileTest
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Thu Aug 26 12:54:37 CEST 2010
[INFO] Final Memory: 17M/172M
[INFO] ------------------------------------------------------------------------
Merci pour tous les commentaires, Tomas Herman
Dans votre référentiel github, je n'ai pas trouvé de dossier src/main/java où tout votre code devrait résider. Aussi si vous avez ce code localement, alors essayez d'abord 'mvn compile' – Gopi