【问题标题】:Maven 3.0.3 uses old JUnit Plugin which doesn't have org.junit.* packageMaven 3.0.3 使用没有 org.junit.* 包的旧 JUnit 插件
【发布时间】:2012-02-14 22:12:06
【问题描述】:

我正在使用 Hudson 并尝试从 subversion 存储库构建一个 maven 项目。 问题是,我猜 Maven 下载了一个旧的 junit 版本,因为我发现了这个:

下载:..repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.pom 已下载:..repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.pom(998 B,2.0 KB/秒)

后来它抱怨包 org.junit.* 不存在。

当我让 Hudson 构建该项目的本地副本(不受颠覆管理)时,它会启动 junit 测试:

T E S T S

运行 JUnitTest ...

我的 pom.xml 看起来像这样:

http://codeviewer.org/view/code:2227

(我也试过 朱尼特 4.8.2 没有方括号,这没有任何帮助。 )

如何让 JUnit 测试运行?

【问题讨论】:

    标签: maven maven-3 maven-surefire-plugin


    【解决方案1】:

    虽然在 pom 中指定了 junit dependency4.8.2 版本,但它在 <dependencyManagement> 标记之间。因此,将不会使用该版本,除非在构建中明确定义了依赖关系。

    您可以通过两种方式解决问题。

    删除外部的<dependencyManagement> 标签 - 只保留内容。

    除了在 pom 文件中 <dependencyManagement><build> 标记之间存在的内容之外,还定义以下内容。

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>
    </dependencies>
    

    Pom reference

    【讨论】:

    猜你喜欢
    • 2020-10-23
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    • 2010-12-27
    • 2012-09-06
    • 1970-01-01
    相关资源
    最近更新 更多