gpt4 book ai didi

java - 为微服务设置 Artifactory

转载 作者:行者123 更新时间:2023-12-03 06:14:38 24 4
gpt4 key购买 nike

因此,我目前正在使用gradle在Java中构建多个微服务。比方说,例如,我有4个微服务A,B,C和D。C依赖于A和B,D依赖于A,B和C。只有C和D被释放。

今天:

要构建C,我克隆A,B和C,然后在所有三个分支中 check out master分支,从cd转到C,调用“gradle build”,它构建A,B和C,然后在Jenkins中获取C.war。

Artifactory 设置问题:

  • 可以说,每次提交后我都会构建A和B,然后将jars推送到 Artifactory 上。现在,当C发生变化时,它将从 Artifactory 中获取A和B的最新值,并构建C。然后将C.war推向 Artifactory 。
  • 让我们说与D相关的B发生了变化,现在我必须构建D。首先,重建B并将其推送到 Artifactory 上。依赖于A和B的C不会得到重建。 D从 Artifactory 中获取A,B和C,并建立D.war并将其推送到 Artifactory 中。
  • 这样可以吗,即用A和v1(版本1)构建的C和B&D是用A的v1,B的v2和C的v1构建的?
  • 如果不是,那么将 Artifactory 用于微服务的标准做法是什么?
  • 如何跨多个分支机构管理微服务?
  • 如何管理开发版本中的发行版本?

  • 请让我知道如何处理。

    谢谢...

    最佳答案

    为什么不创建构建链并正确配置上游和下游项目?理想情况下,所有这些都应独立构建。 A和B不依赖,因此应该是第一个要构建的。然后是C,最后是D。

    因此,A和B是上游项目,C被配置为下游项目,A和B的配置。

    同样,对于D-A,B和C,应将其配置为上游项目。

    关于查询,

    Is this OKAY i.e. C being built with v1 (version 1) of A and B & D gets built with v1 of A, v2 of B and v1 of C ??



    据我了解,maven在创建D的 war 时将保留B的更高版本(不包括v1和v2)。如果war包含B的多个版本,则它与类路径有关的一个更大的问题,您需要B的正确版本。

    其余所有流程均为标准开发人员惯例,迄今为止没有出现偏差。

    只需考虑一件事,假设您要释放C,那么首先应该释放A和B。

    关于java - 为微服务设置 Artifactory ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31912285/

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