如何管理 Spring 个引导项目之间的共享代码?
How to manage shared code between Spring Boot projects?
所以我在一家公司工作,该公司使用 spring 作为后端,使用 GitLab 作为 CI/CD。我们目前有 2 spring 个使用大量共享代码的项目。主要是 JPA 存储库、模型、DTO 和服务。我们正在寻找一种解决方案,使我们能够更轻松地共享对项目之间共享代码所做的更改。例如,如果我们在项目 A 的存储库中创建一个新查询,我们希望能够在项目 B 中拥有它,而无需诉诸复制和粘贴代码。
欢迎提出任何建议。
我相信@Andrew 的评论足以处理这种情况,所以为了详细解释它,将分享几个可以执行的步骤。
创建一个新项目(common-util) 是否具有 spring 启动功能取决于哪种您想从项目 A 中分离出来的项目。否则,如果您正在寻找 DI 或 JPA 等其他项目,它可能是具有 spring 功能的普通 java 项目。
现在将此项目添加为项目 A 和 B 的依赖项,现在对于您的通用工具中的每个更改,您只需要更新项目 A 和 B 中的最新版本。
通用工具的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
项目 A 的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>A</artifactId>
<version>1.0.0</version>
<dependency>
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
</dependency>
项目 B 的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>B</artifactId>
<version>1.0.0</version>
<dependency>
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
</dependency>
所以我在一家公司工作,该公司使用 spring 作为后端,使用 GitLab 作为 CI/CD。我们目前有 2 spring 个使用大量共享代码的项目。主要是 JPA 存储库、模型、DTO 和服务。我们正在寻找一种解决方案,使我们能够更轻松地共享对项目之间共享代码所做的更改。例如,如果我们在项目 A 的存储库中创建一个新查询,我们希望能够在项目 B 中拥有它,而无需诉诸复制和粘贴代码。
欢迎提出任何建议。
我相信@Andrew 的评论足以处理这种情况,所以为了详细解释它,将分享几个可以执行的步骤。
创建一个新项目(common-util) 是否具有 spring 启动功能取决于哪种您想从项目 A 中分离出来的项目。否则,如果您正在寻找 DI 或 JPA 等其他项目,它可能是具有 spring 功能的普通 java 项目。
现在将此项目添加为项目 A 和 B 的依赖项,现在对于您的通用工具中的每个更改,您只需要更新项目 A 和 B 中的最新版本。
通用工具的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
项目 A 的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>A</artifactId>
<version>1.0.0</version>
<dependency>
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
</dependency>
项目 B 的示例 POM:
<groupId>com.xyz.groupid</groupId>
<artifactId>B</artifactId>
<version>1.0.0</version>
<dependency>
<groupId>com.xyz.groupid</groupId>
<artifactId>common-util</artifactId>
<version>1.0.0</version>
</dependency>