You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

sbt sonaUpload部署名称缺失ArtifactID,如何配置解决?

解决sbt sonaUpload上传Sonatype时部署信息缺失ArtifactID的问题

问题背景

使用sbt sonaUpload向Sonatype上传版本时,生成的部署仅显示GroupID(如nl.codestar)和版本号(如0.4.6),缺失ArtifactID(本例为sbt-azure-functions_2.12_1.0),导致Sonatype后台的部署列表难以区分不同组件(尤其是版本号相近时)。操作日志中部署标识显示为nl.codestar:0.4.6:516c7e99,未包含关键的ArtifactID信息。当前环境使用sbt 1.11.0、sbt-assembly 2.3.1、sbt-ci-release 1.11.1。

可行解决方法

1. 自定义部署会话名称(推荐)

sbt-ci-release的sonaUpload支持通过sonatypeSessionName配置自定义部署会话的显示名称,将ArtifactID纳入其中。在build.sbt中添加以下配置:

ThisBuild / sonatypeSessionName := {
  val artifactId = (name).value
  val version = (version).value
  val groupId = (organization).value
  s"$groupId:$artifactId:$version"
}

配置后,Sonatype后台的部署列表会显示包含GroupID、ArtifactID和版本号的完整标识,比如nl.codestar:sbt-azure-functions_2.12_1.0:0.4.6,可轻松区分不同组件。

2. 检查并升级sbt-ci-release插件

当前使用的sbt-ci-release 1.11.1可能存在部署信息未提取ArtifactID的疏漏。可以查看插件的版本更新记录,若后续版本有修复该问题,升级到最新版本即可直接解决。

3. 验证POM文件完整性

从操作日志看,POM文件已正确生成(路径为/Users/jml/work/sopra/repos/codestar/sbt-plugins/sbt-azure-functions-plugin/plugin/target/scala-2.12/sbt-1.0/sbt-azure-functions_2.12_1.0-0.4.6.pom),可打开该文件确认<artifactId>字段是否正确填写。如果POM文件没问题,说明问题出在sonaUpload任务的信息提取逻辑上,此时优先通过自定义会话名称或升级插件解决。

内容的提问来源于stack exchange,提问作者JeanMarc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 12:12:21