寻找带有子项目的父项目的 Leiningen 发布任务自动化
Looking for Leiningen release task automation for parent projects with subprojects
我们使用库和独立的 uberjars 构建我们的应用程序套件,使用 Leiningen 来构建。我们使用 lein-parent 插件并有一个父项目为第三方依赖项和我们自己的库设置版本。
我们的团队在本地分布和构建,使用中央 Artifactory 库。因此,我们倾向于将库版本设置为 -SNAPSHOT 限定符,以确保每个认为自己在主要分支机构工作的人都能获得最新的库 jar。父项目本身有一个 -SNAPSHOT 限定符,因为在我们(例如)减轻由 OWASP 漏洞检查器等工具发现的代码漏洞时,第 3 方依赖项不断变化。
在发布时,我们需要冻结所有这些:-SNAPSHOT 限定符需要从父项目和每个子项目中删除。 lein 发布工具可以很好地做到这一点。 lein release
之类的命令负责项目版本,lein change :parent-project:coords set [groupid/artifactid "version"]
可以负责子项目中对父项目的引用。
但是,我们找不到任何可以自动进入父项目的 :managed-dependencies
向量并更新指定子项目版本的 Leiningen 工具。 lein change
似乎只能处理在项目映射中键入的值。
有没有人找到一个可行的解决方案来管理发布任务期间父子项目之间的相互依赖关系?
Leiningen 2.9.9-SNAPSHOT 现在支持编辑父项目或子项目中项目的 :dependencies 或 :managed-dependencies 向量中特定依赖项的版本。
我们使用库和独立的 uberjars 构建我们的应用程序套件,使用 Leiningen 来构建。我们使用 lein-parent 插件并有一个父项目为第三方依赖项和我们自己的库设置版本。
我们的团队在本地分布和构建,使用中央 Artifactory 库。因此,我们倾向于将库版本设置为 -SNAPSHOT 限定符,以确保每个认为自己在主要分支机构工作的人都能获得最新的库 jar。父项目本身有一个 -SNAPSHOT 限定符,因为在我们(例如)减轻由 OWASP 漏洞检查器等工具发现的代码漏洞时,第 3 方依赖项不断变化。
在发布时,我们需要冻结所有这些:-SNAPSHOT 限定符需要从父项目和每个子项目中删除。 lein 发布工具可以很好地做到这一点。 lein release
之类的命令负责项目版本,lein change :parent-project:coords set [groupid/artifactid "version"]
可以负责子项目中对父项目的引用。
但是,我们找不到任何可以自动进入父项目的 :managed-dependencies
向量并更新指定子项目版本的 Leiningen 工具。 lein change
似乎只能处理在项目映射中键入的值。
有没有人找到一个可行的解决方案来管理发布任务期间父子项目之间的相互依赖关系?
Leiningen 2.9.9-SNAPSHOT 现在支持编辑父项目或子项目中项目的 :dependencies 或 :managed-dependencies 向量中特定依赖项的版本。