我有两个 Maven 项目:打包为 JAR 的项目 1 和打包为 WAR 的项目 2。
<!-- Project1's POM -->
<groupId>foobar</groupId>
<artifactId>project1</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<!-- Project2's POM -->
<groupId>foobar</groupId>
<artifactId>project2</artifactId>
<version>1.0</version>
<packaging>war</packaging>
我想将 Project1 包含到 Project2 中,所以在 Project2 的 POM 中,我添加:
<dependency>
<groupId>foobar</groupId>
<artifactId>project1</artifactId>
<version>1.0</version>
</dependency>
但 Project2 无法解决此依赖关系。
在 Project2 的属性中,Java Build Path > Libraries,我可以看到 Project2 在我的“~/.m2”文件夹中寻找“project1-1.0.jar”。这正常吗?
有没有人也遇到过这个问题并最终找到了解决方案?即使在 SO 中寻找相关问题的答案时,我也无法让它工作。
- eclipse 开普勒
- maven 3.0.4
- Eclipse WTP (Juno) 1.0.1 的 Maven 集成
最佳答案
除非您在 project1
上运行 maven install。它不会作为 jar 文件打包到您的 .m2
存储库中,因此它不会在 project2
的 pom 文件中解析。
这类似于使用第三方 jar 文件。但没有在 .m2 存储库中。即使在那种情况下,您也会面临同样的问题。
对于您的项目 2,项目 1 被视为独立的第三方 jar 文件。
它需要在您的 .m2
存储库中,以便它解析它。
关于java - 将 JAR Maven 项目包含到 WAR Maven 项目中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21160187/