0

我们向客户提供具有许多外部依赖项的软件包。现在客户可以使用你的库在上面开发东西。对于那些也在使用 Maven 的人,我们希望在包含所有依赖项的程序集中包含一个pom.xml文件,这样他们就可以在他们的 Maven 构建中简单地使用它:

它应该包含我们使用的所有依赖项,如下所示:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-math</artifactId>
    <version>2.1</version>
    <scope>compile</scope>
</dependency>

有没有办法在 Maven 中实现这一点?

4

2 回答 2

1

默认情况下,您的 jar/war 的 pom.xml 位于您的 jar/war 中的位置META-INF\maven\<groupId>\<artifacdId>

于 2012-11-29T04:50:11.400 回答
0

你有两个选择:

第一种是最常见和首选的方式是依赖 Maven 的传递依赖解析。

在您的项目中有一个POM(假设称为foo-api:1.0)来声明依赖项(例如A:1.0:jarB:1.0:jar)。

开发者自己的项目 ( bar:2.0) 应该简单地依赖于foo-api:1.0. Maven 将通过传递依赖解析简单地包含A:1.0:jarB:1.0:jar作为 的依赖。bar:2.0

另一种方法与上述方法类似,但foo-api:1.0用作bar:2.0.

无论哪种方式都应该有效,但哪种方式合适取决于您的设计。

于 2012-11-29T06:27:51.893 回答