0

在构建我的工作区时,我的 Java 6 Maven 项目被标记为错误(一个 Maven 问题):

Could not calculate build plan: The repository system is offline but the artifact org.apache.maven.surefire:surefire:pom:2.7.1 is not available in the local repository.

令我感到奇怪的是,它正在搜索 org.apache.maven.surefire:surefire,而真正的依赖项是 org.apache.maven.surefire:maven-surefire-plugin。

我的有效 pom 显示:

<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.7.1</version>
<executions>

我正在使用带有 m2eclipse 插件的 Eclipse Indigo。并且在运行任何 Maven 目标时都能正确编译。我尝试清理项目,重新导入它,清除 .metadata 文件。这种行为从何而来?谢谢

4

1 回答 1

0

提到的依赖项是 maven-surefire-plugin 的父项目,通常不应仅通过 maven-surefire-plugin 本身直接给出。

此外What strikes me as odd is that it is searching for org.apache.maven.surefire:surefire while the true dependency is org.apache.maven.surefire:maven-surefire-plugin.,这是完全错误的,导致maven-surefire-plugin的正确 groupId 和 artifactId是:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <version>2.7.2</version>
  ...
</plugin>

访问 maven Central 时可能会出现问题。除了上述之外,您还应该更新 maven-surefire-plugin,因为当前的最新版本是 2.15。

于 2013-06-26T18:43:40.590 回答