日食中Maven构建失败;从命令行成功

时间:2014-11-07 15:00:18

标签: eclipse maven

Eclipse Kepler中的maven项目在调用“Run As - > maven install”或“Run As-> Maven build .... clean install”时不会构建。

我收到以下错误:

  

[错误]无法在项目SSLibrary上执行目标:无法解决   项目的依赖关系com.SSLibrary:jar:1.1.0-SNAPSHOT:不能   找到工件org.jacorb:jacorb:jar:2.3.2-redhat-4 in   artifactory的发布版   (xxx / libs-release-local) - > [帮助1]

我在eclipse中的pom.xml有一个红色x表示:

  

此行找到多个注释:      - 缺少工件org.jacorb:jacorb:jar:2.3.2-redhat-4      - 缺少工件com.sun:tools:jar:1.6

但是,从命令行执行mvn install是成功的。我还可以在我的本地仓库中看到org.jacorb.jacorb.jar文件,版本2.3.2-redhat-4。

它几乎像Eclipse一样遵循不同的规则。

2 个答案:

答案 0 :(得分:14)

可能有几个原因导致Maven构建在Eclipse中失败但在命令行中运行。

  • 检查您是否在Eclipse和命令行中使用相同的Maven安装。为此,请检查系统路径并将其与Eclipse中使用的版本进行比较,您可以在Eclipse Preferences屏幕中找到它:Maven-> Installations。也许您使用的是嵌入式版本?
  • 检查您是否使用相同的settings.xml文件。在Maven中,它位于$ {MAVEN_HOME} / conf目录中。在Eclipse中,您还可以在Eclipse Preferences屏幕中指定另一个文件:Maven-> User Settings
  • 此外,检查该屏幕中的本地存储库是否与settings.xml
  • 中定义的相同
  • 确保您在Eclipse和Maven中使用相同的Java版Java。
  • 您可以尝试删除本地存储库中存在问题的依赖项,以便重新下载
  • 如果您正在使用其他Eclipse项目作为依赖项,您可以尝试通过右键单击项目并选择Maven -> Disable Workspace Resolution来禁用工作区依赖项解析(您必须安装其他项目工件)你当地的回购首先)
  • 如果没有其他任何帮助,并且您正在使用像Nexus或Archiva这样的代理,请尝试手动解压缩您的jar文件以检查其完整性(您能看到里面的类文件吗?)。如果jar不正确或不存在,请与代理管理员联系。

编辑:为了尝试解决pom.xml文件中Eclipse显示的错误问题,一旦检查了之前的点(在这种情况下不需要最后一点),你也可以尝试这样:

  • 在Package / Project Explorer中右键单击您的项目。选择Maven->更新项目。这将根据您的Maven设置更新Eclipse项目设置。然后运行Maven clean + install

答案 1 :(得分:-1)

试试这个:

  • Eclipse IDE>窗口>显示视图> Maven存储库>本地存储库>重建指数
  • 尝试在eclipse中清理和刷新项目。
  • 您可能还必须从m2存储库中删除该特定jar并强制maven重新下载它。我认为有时候maven会腐败'一个罐子。