gpt4 book ai didi

java - 无论如何,要在我的本地文件系统上包含另一个 Maven 项目作为依赖项?

转载 作者:行者123 更新时间:2023-12-01 11:31:38 25 4
gpt4 key购买 nike


我有一个 Maven“项目 A”,它依赖于 Maven 存储库中的另一个开源 Artifact 。但是,我已将该 Artifact 的代码下载到本地磁盘,并对项目 A 中我想要的代码进行了修改。有什么方法可以链接这两个项目,以便在构建项目 A 时,该 Artifact 的 jar 是也是从我的本地磁盘构建的,而不将此 Artifact 包含到父 pom 中?基本上我不需要父 pom,因为在最终构建中我将将此代码贡献回开源项目,并仅通过我的 pom 中的依赖项引用该项目。

最佳答案

除非我误解了你的意思,否则在我看来你想使用多模块 Maven 项目:

http://books.sonatype.com/mvnex-book/reference/multimodule.html

您可以使用这样的父 POM 来构建模块:

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>your.groudId</groupId>
<artifactId>simple-parent</artifactId>
<packaging>pom</packaging>
<version>1.0</version>
<name>Multi Module Simple Parent Project</name>
<modules>
<module>open-source-project-modified</module>
<module>project-a</module>
</modules>
</project>

这将首先构建 open-source-project-modified (本地磁盘上的修改版本),然后构建 project-a (也在本地磁盘上,并且依赖于开源修改项目)。 POM 中模块的顺序应按照依赖关系进行排列。

磁盘上项目的结构为:

simple-parent/
|_____pom.xml (the POM listed above)
|_____open-source-project-modified/
|_____project-a/

如果您查看我提供的链接的介绍部分,您可以下载一个示例 zip 文件:

http://www.sonatype.com/books/mvnex-book/mvnex-examples.zip

在 zip 文件中,转到mvnexbook-examples-1.0/ch-multi/simple-parent,您将找到这个结构。

关于java - 无论如何,要在我的本地文件系统上包含另一个 Maven 项目作为依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30336478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com