gpt4 book ai didi

java - 如何将 git 子模块与 Maven 子模块一起使用?

转载 作者:行者123 更新时间:2023-12-05 06:20:10 25 4
gpt4 key购买 nike

我喜欢使用 git 子模块在项目之间共享公共(public)服务。项目结构类似于:

contacts project
├ security module (shared, uses common security DB)
├ contacts dao module
├ contacts web module
└ contacts api module

products project
├ security module (shared, uses common security DB)
├ products dao module
├ products web module
└ products api module

accounts project
├ security module (shared, uses common security DB)
├ accounts dao module
├ accounts web module
└ accounts api module

一般来说,这是一个微服务架构,每个项目都是完全独立的,并且有自己的git repo。不是的一部分是共享安全数据库(不是我的选择)。我想开发一次共享安全服务,并使用 git 子模块(将单独的 repo 版本化映射为子文件夹)与所有微服务项目共享它。

git 子模块将包含一个可以包含在每个多模块 maven 项目中的 maven 子模块。

我的问题是 Maven 子模块 pom 中的父引用。

  <parent>
<groupId>com.org.project</groupId>
<artifactId>project-a-artifact</artifactId>
<version>1</version>
</parent>

因为 maven pom 包含对其父项的显式引用,所以我看不到任何方法来完成我想要的。

有什么建议吗?

最佳答案

答案是不使用 maven 子模块。只需在另一个 git 存储库中将共享服务创建为独立的 maven 项目。将项目作为 git 子模块添加到目标项目中,并根据需要从父 pom 和其他子模块中引用它。

这将设置正确的构建依赖关系,但共享项目不会从父 pom 继承任何内容。

关于java - 如何将 git 子模块与 Maven 子模块一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60584251/

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