maven错误:包org.junit不存在

我试图创build与Maven的javadoc,它失败了。 在进行validation时也会失败。

mvn verify 

我得到以下错误:

 (...) [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /home/miquel/creaveu/createOmegaMatrix/src/main/java/edu/url/salle/gtm/hnm/dataStructures/HFrame.java:[6,23] package org.junit does not exist [ERROR] /home/miquel/creaveu/createOmegaMatrix/src/main/java/edu/url/salle/gtm/hnm/dataStructures/HFrame.java:[6,0] static import only from classes and interfaces (···) 

在我的pom.xml文件中,我有以下几行:

 <dependency> <groupId>org.junit</groupId> <artifactId>junit</artifactId> <version>4.8.2</version> <scope>test</scope> </dependency> 

而我的本地仓库包含junit jar文件:

 miquel@ubuntu:~/creaveu/createOmegaMatrix$ ls -l /home/miquel/.m2/repository/org/junit/junit/4.8.2/ total 248 **-rw-r--r-- 1 miquel miquel 237344 2012-09-13 11:01 junit-4.8.2.jar** -rw-r--r-- 1 miquel miquel 236 2012-09-13 11:13 junit-4.8.2-javadoc.jar.lastUpdated -rw-r--r-- 1 miquel miquel 0 2012-09-13 11:13 junit-4.8.2-javadoc.jar-not-available -rw-r--r-- 1 miquel miquel 458 2012-09-12 18:35 junit-4.8.2.pom -rw-r--r-- 1 miquel miquel 236 2012-09-13 11:13 junit-4.8.2-sources.jar.lastUpdated -rw-r--r-- 1 miquel miquel 0 2012-09-13 11:13 junit-4.8.2-sources.jar-not-available -rw-r--r-- 1 miquel miquel 163 2012-09-13 11:22 _maven.repositories miquel@ubuntu:~/creaveu/createOmegaMatrix$ 

代码很好,因为在我现在无法访问的笔记本电脑中,我运行了:

 mvn javadoc:javadoc mvn verify 

没有问题,并且testing在eclipse IDE中工作。

好吧,你已经为test类声明了junit依赖关系(那些在src/test/java但是你正在尝试在main类( src/main/java )中使用它)。

或者不要在主类中使用它,或者移除<scope>test</scope>

我通过插入这些代码行来解决这个错误:

 <dependency> <groupId>junit</groupId> <!-- NOT org.junit here --> <artifactId>junit-dep</artifactId> <version>4.8.2</version> </dependency> 

到<依赖关系>节点中。

更多的细节参考: http : //mvnrepository.com/artifact/junit/junit-dep/4.8.2

如果您使用Eclipse,请注意您的POM依赖项以及您的Eclipse构buildpath依赖于junit

如果您select使用Junit4 eclipse,使用org.junit包创buildTestCase,但是您的POM默认使用Junit3(junit.framework包),那就是这样的原因:

看到JUNIT的冲突

只需将您的POM文件中的Junit依赖项更新为Junit4或将您的Eclipse BuildPath更新为Junit3即可