gpt4 book ai didi

java - 多模块应用程序maven

转载 作者:太空宇宙 更新时间:2023-11-04 08:06:51 26 4
gpt4 key购买 nike

我有多模块 Maven 项目,其中主项目依赖于子模块。子模块的每个依赖项都是按版本定义的,如下所示:${pom.version}。我使用maven发布插件。如果我尝试准备发布,则会收到有关缺少子模块版本的错误。

示例:

main pom 版本为 1.0,我尝试发布它。 Maven 将每个子模块构建到版本 1.1,然后尝试构建父模块,然后崩溃。因为它找不到sub-module-1.1

我不知道如何告诉 Maven 构建,并立即将其构建的每个子模块安装到本地存储库。我使用maven2。

我的pom:

<modelVersion>4.0.0</modelVersion>

<groupId>com.voncuver</groupId>
<artifactId>voncuver</artifactId>
<packaging>pom</packaging>
<version>1.1-SNAPSHOT</version>
<name>multimodule</name>

<modules>
<module>mod1</module>
<module>mod2</module>
</modules>

(...)

<dependencyManagement>
<dependencies>
<dependency>
<artifactId>mod1</artifactId>
<groupId>com.voncuver</groupId>
<version>${pom.version}</version>
</dependency>
<dependency>
<artifactId>mod2</artifactId>
<groupId>com.voncuver</groupId>
<version>${pom.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
(...)

最佳答案

您可能应该发布更多的项目结构,但通常多模块项目如下所示:

project
mod1
mod2
mod3
pom.xml

主要的 pom.xml 将具有“pom”包装类型,并且其中有一个部分用于构建其他所有内容:

<packaging>pom</packaging>
<modules>
<module>mod1</module>
<module>mod2</module>
<module>mod3</module>
</modules>

然后,确保正确构建的最可靠方法是执行:

mvn clean install

如果没有“安装”,很可能在 Maven Reactor 中找不到东西,特别是取决于您使用的 Maven 版本(以及其他一些因素)。

关于java - 多模块应用程序maven,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11934592/

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