由Maven进行依赖管理的Eclipse项目

时间:2011-08-08 09:24:01

标签: eclipse maven maven-plugin

我有一个Eclipse项目,Maven管理依赖项。我还有几个不是Maven启用的jar文件,我在src / main / webapp / WEB-INF / lib找到它们。我没有在Eclipse中构建/运行项目的问题。在Eclipse中构建项目后,运行“mvn:package”也没有问题。但是,在我调用“mvn:clean”之后,如果我运行“mvn:package”,我将得到编译错误,因为它无法在src / main / webapp / WEB-INF / lib下找到依赖jar文件。我需要做的是重建Eclipse项目,然后“mvn:package”。因此,我不能在Eclipse IDE之外调用“mvn:package”。

如何解决这个问题?

感谢。

2 个答案:

答案 0 :(得分:2)

你必须将不是“Maven启用的工件”放到适当的Maven存储库(Nexus,Artifactory),而不是改变你的项目以适当地使用依赖关系。要么你做Maven或不做,但两者之间没有任何东西。 Maven是一个构建工具,不仅用于依赖管理。使用Eclipse后,这些更改将正常工作(如果您使用M2Eclipse)。如果您正确使用Maven,您可以通过Eclipse执行这两项操作或在命令行上调用mvn package。

答案 1 :(得分:0)

如果您无法设置推荐的环境(maven存储库),则可以将依赖关系System dependencies添加到pom.xml

<project>
  ...
  <dependencies>
    <dependency>
      <groupId>foo</groupId>
      <artifactId>bar</artifactId>
      <version>1.2.3</version>
      <scope>system</scope>
      <systemPath>${basedir}/src/main/webapp/WEB-INF/lib/foobar.jar</systemPath>
    </dependency>
  </dependencies>
  ...
</project>
相关问题