【发布时间】:2012-03-03 16:36:41
【问题描述】:
我不知道这是一个问题还是一个建议。但我会问它作为一个问题,因为可能是我做错了什么。
我的问题是我想在 maven 构建中跳过测试,在 eclipse 插件中,我在运行 maven 时检查了配置中的 Skip Test 选项。它仍然在 Test surefire 插件上失败,因为它无法下载 2.4.3 版本(即使我以前的 maven 项目使用 2.7.2 并且它已经存在于我的仓库中)所以我尝试跳过测试,它仍然失败的。
我将我的 POM 配置为使用我已经拥有的 surefire 2.7.3 插件,它只是说跳过测试。现在,我的困惑是,当它已经要跳过测试部分时,为什么还要费心去下载并确认用于surefire的插件是否存在。我说的就跳过它..
好吧,这是 maven 的正常行为,当您跳过某些内容时,插件仍然会被下载,就好像您要使用它一样。还是我做错了让它下载。
可能是因为当我使用 m2eclipse 在 eclipse 中导入我的 maven 项目时,我无法编辑 Effective POM .在制作 maven 项目时,我以前在 NetBeans 中没有看到过这种情况。
为了工作,我在我的构建配置文件中添加了一个不必要的肯定插件条目,并跳过了那里的测试,并添加了我已经在我的仓库中拥有的版本。我这样做只是为了让我的项目也可以在 eclipse 下构建。否则我的项目可以在 NetBeans 和简单的命令行中运行,没有任何问题。
任何cmets!!
我认为maven应该能够先看到SKIP部分,然后再进入插件的使用。
赛德..
【问题讨论】:
-
你能发布你收到的错误信息吗?并且 pom(摘录)会有所帮助。
-
错误只是说明它无法下载surefire插件2.4.3并要求我手动下载并手动添加它。所以我使用了 2.7.2(抱歉不是 2.7.3)。现在它正在工作,因为我在我的 POM 中添加了它。 eclipse 插件在 Pom.xml 中有一个名为 Effective POM 的新部分,它的插件管理部分中有这个 2.4.3 插件版本。我通过在我的实际 POM 中添加 2.7.2 来超越它。 (有效的 POM 是一个不可编辑的 POM,我认为 eclipse 实际上与我的一起使用。)
-
有效的pom是maven的超级pom和你项目的当前pom混合。更准确地说,你的 pom 继承了 super pom 的东西。您也可以通过 mvn help:effective-pom ... 在命令行上输出它