首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在构建跨构建构件,但不使用“`releaseCrossBuild := true`”

正在构建跨构建构件,但不使用“`releaseCrossBuild := true`”
EN

Stack Overflow用户
提问于 2018-02-09 11:01:10
回答 1查看 414关注 0票数 1

我正在尝试发布一个针对Scalav2.11和v2.12的交叉构建的https://github.com/guardian/marley版本。所有的代码依赖关系都是满足的,+test+publishLocalSigned都可以正常工作,后者肯定会为Scalav2.11和v2.12生成工件。不幸的是,使用sbt release插件执行sbt-sonatype只会上传Scalav2.12的工件-它不会尝试将Scalav2.11的工件上传到sonatype暂存库。

下面是来自build.sbt文件(GitHub回购中的完整版本)的相关sbt设置:

代码语言:javascript
复制
scalaVersion in ThisBuild := "2.12.4"

crossScalaVersions in ThisBuild := Seq(scalaVersion.value, "2.11.12")

import ReleaseTransformations._

releaseCrossBuild := true // true if you cross-build the project for multiple Scala versions
releaseProcess := Seq[ReleaseStep](
  checkSnapshotDependencies,
  inquireVersions,
  runClean,
  runTest,
  setReleaseVersion,
  commitReleaseVersion,
  tagRelease,
  releaseStepCommand("publishSigned"),
  setNextVersion,
  commitNextVersion,
  releaseStepCommand("sonatypeReleaseAll"),
  pushChanges
)

下面是sbt release命令输出的完整副本:https://gist.github.com/rtyley/5f9f832fabe2bdcfc2d561a36c29f993 --您可以看到,即使出现[info] Setting scala version to 2.11.12 (两次),也只上传了Scala2.12工件。

EN

回答 1

Stack Overflow用户

发布于 2018-02-09 12:23:28

我认为问题在于发布过程中的releaseStepCommand("publishSigned")

我认为要么是:

  • 它需要是releaseStepCommand("+publishSigned");或
  • 您需要设置releasePublishArtifactsAction := PgpKeys.publishSigned.value,然后切换回publishArtifacts (而不是使用releaseStepCommand)

自述文件以releasePublishArtifactsAction方式记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48704387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档