SBT项目发布到Maven Central

时间:2019-04-25 07:17:21

标签: scala sbt nexus gnupg

我正在将我的项目作为jar文件在GitHub中发布到Maven中央联系仓库中,并且我遵循了SBT中本文档页面中提到的所有步骤!

  

https://www.scala-sbt.org/release/docs/Using-Sonatype.html

但是现在我跑步

  

sbt publishSigned

针对我的项目的命令,出现以下错误:

[info] Done packaging.
[error] gpg: keyblock resource '/Users/joesan/.sbt/gpg/secring.asc': No such file or directory
[error] gpg: no default secret key: No secret key
[error] gpg: signing failed: No secret key
[error] java.lang.RuntimeException: Failure running gpg --detach-sign.  Exit code: 2
[error]     at scala.sys.package$.error(package.scala:26)
[error]     at com.typesafe.sbt.pgp.CommandLineGpgSigner.sign(PgpSigner.scala:27)
[error]     at com.typesafe.sbt.pgp.PgpSettings$.$anonfun$signingSettings$2(PgpSettings.scala:157)
[error]     at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:240)
[error]     at scala.collection.immutable.Map$Map4.foreach(Map.scala:233)
[error]     at scala.collection.TraversableLike.flatMap(TraversableLike.scala:240)
[error]     at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:237)
[error]     at scala.collection.AbstractTraversable.flatMap(Traversable.scala:104)
[error]     at com.typesafe.sbt.pgp.PgpSettings$.$anonfun$signingSettings$1(PgpSettings.scala:154)
[error]     at scala.Function1.$anonfun$compose$1(Function1.scala:44)
[error]     at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:40)
[error]     at sbt.std.Transform$$anon$4.work(System.scala:67)
[error]     at sbt.Execute.$anonfun$submit$2(Execute.scala:269)
[error]     at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error]     at sbt.Execute.work(Execute.scala:278)
[error]     at sbt.Execute.$anonfun$submit$1(Execute.scala:269)
[error]     at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error]     at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error]     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error]     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[error]     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error]     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[error]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[error]     at java.lang.Thread.run(Thread.java:748)
[error] (signedArtifacts) Failure running gpg --detach-sign.  Exit code: 2

看起来它正在期待一些secrte文件,但路径上没有它。如何解决这个问题?有什么想法吗?

1 个答案:

答案 0 :(得分:0)

找出丢失的文件(secring.asc)在您的计算机上的位置,您应该拥有它 如果您按照说明进行操作。 然后在〜/ .sbt / gpg.sbt文件中设置位置:

pgpSecretRing := file("/tmp/secring.asc")
相关问题