无法从本地Maven存储库添加项目作为依赖项

时间:2010-07-05 06:37:21

标签: java eclipse maven-2 dependencies m2eclipse

我已经编写了一个新的Maven项目,现在我们称之为 Utils 。我已经在我当地的Maven存储库中成功安装了它。至少目标clean install最终打印BUILD SUCCESSFUL。当我通过Windows资源管理器手动导航时,我也可以找到jar。

现在有另一个名为 Import 的项目,我已经编写了应该将 Utils 作为依赖项。当我现在将其添加到具有范围 compile 的pom并运行目标eclipse:eclipse时,我再次收到消息BUILD SUCCESSFUL。但遗憾的是, Utils 项目不在 Import 的引用库中。

当我想在Maven Eclipse插件的POM视图中添加它时,也找不到 Utils 。有趣的是,当我指定 Utils 的错误版本时,当我想用​​Maven安装 Import 时,我收到警告。

你知道我哪里错了吗?

2 个答案:

答案 0 :(得分:2)

  • 如果你正在使用m2eclipse,那么它默认使用工作空间解析来解决依赖关系(导入取决于 Utils 项目您的工作区 Utils 将不会在引用的库中列出。换句话说,依赖是存在的,但不是你正在寻找它。

  • 您可以在命令行上的导入 上运行mvn dependency:tree以确认一切正常。您应该在打印的树中看到 Utils

  • 如果您正在使用m2eclipse,请不要使用maven eclipse插件(eclipse:eclipse),将项目导入为现有Maven项目

    < / LI>
  • 我不知道为什么你把maven称为外部工具。

答案 1 :(得分:0)

为了使maven eclipse插件忽略工作区中的项目,您还可以将属性useProjectReferences设置为false。 例如,将此部分添加到pom.xml

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-eclipse-plugin</artifactId>
  <version>2.8</version>
  <configuration>
    <useProjectReferences>false</useProjectReferences>
  </configuration>
</plugin>