我正在尝试使用 sbt 发布由 ProGuard jar 混淆的内容。到目前为止,我有这段代码,但它没有使用 sbtpublish-local
将混淆的 jar 推送到本地 ivy2 存储库中:
artifact in (Proguard, ProguardKeys.proguard) ~= {
art => art.copy(`classifier` = Some("proguard"))
}
addArtifact(Artifact("myJar", "jar", "jar"), assembly in ProguardKeys.proguard)
publishArtifact in ProguardKeys.proguard := true
你以前做过这样的事情或者有什么想法吗?
谢谢
最佳答案
技巧如下:
// do not publish source, javadoc and default jar
publishArtifact in (Compile, packageBin) := false
publishArtifact in (Compile, packageDoc) := false
publishArtifact in (Compile, packageSrc) := false
// add the Proguard jar for publishing
addArtifact(artifact in (Compile, ProguardKeys.proguard), (ProguardKeys.proguard in Proguard) map { xs => xs.head })
使用此配置,我禁用源代码、javadoc 和默认 jar 的发布,并添加要发布的 Proguard 生成的 jar。现在 publish[Local]
任务仅发布 pom 和 Proguard jar。
关于sbt - 如何使用 sbt 发布经过 ProGuard jar 混淆的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34861298/