我正在尝试使用Maven构建一个简单的Java项目。在我的pom-file中,我声明JUnit 4.8.2是唯一的依赖项。尽管如此,Maven仍然坚持使用JUnit版本3.8.1。我该如何修复它?
问题表现为编译失败:"package org.junit不存在“。这是因为我的源代码中的import语句。在JUnit 4.*中,正确的包名是org.junit.*,而在版本3.*中,它是Junit.framework。*
我想我已经在http://maven.apache.org/plugins/maven-surefire-plugin/examples/junit.html上找到了关于问题根源的文档,但那里的建议似乎是针对Maven专家的。我不知道该怎么办。
发布于 2011-05-17 05:47:03
@Dennis Roberts:你完全正确:我的测试类位于src/main/java中。此外,JUnit的POM中的"scope“元素的值是"test",尽管它应该是这样的。问题是我在Eclipse中创建测试类时很草率,导致它被创建在src/ test /java的src/main/java实例中。在运行"mvn eclipse:eclipse“之后,在eclipse的Project Explorer视图中可以很容易地看到这一点,但正是您的注释让我最先看到了它。谢谢。
发布于 2013-07-12 02:30:14
只是为了得到一个完整的解决方案的答案来帮助访问者:
您需要做的就是将junit依赖项添加到pom.xml
。别忘了<scope>test</scope>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
发布于 2014-03-07 06:11:15
我的问题是我的pom.xml
中有一行,我有<sourceDirectory>${basedir}/src</sourceDirectory>
这一行,删除这一行,让maven使用常规结构的文件夹,这解决了我的问题
https://stackoverflow.com/questions/5845990
复制相似问题