如何在 Build.scala 中设置 sbt-proguard 插件
How to set-up the sbt-proguard plugin in Build.scala
我想在我的项目中使用sbt-proguard插件,但我需要在Build.scala[=27中设置它=] 文件.
我阅读了文档,但只有 build.sbt 文件的示例,这对我来说不起作用。 我需要知道如何为我的 Build.scala 文件配置插件。
这是回购的 link:https://github.com/sbt/sbt-proguard/blob/master/README.md#example
仅供参考:我正在使用 scala.version=2.11.4 和 sbt.version=0.13.5
(注意:sbt目前推荐multi-project build.sbt而不是build.scala。)
一些 sbt 插件使用脚本来测试自己,它在 src/sbt-test
下设置假构建。如果您找到一个,它可能包含有关如何设置插件的不错示例。
sbt-proguard 创建了一个名为 akka 的示例,据称由 Akka 项目使用。
import sbt._
import sbt.Keys._
import com.typesafe.sbt.SbtProguard._
object SampleBuild extends Build {
import ProguardKeys.{ mergeStrategies, merge, options }
import ProguardOptions.keepMain
import ProguardMerge.append
lazy val proguardAkka = Project(
id = "proguard-akka",
base = file("."),
settings = Defaults.defaultSettings ++ proguardSettings ++ Seq(
scalaVersion := "2.10.1",
libraryDependencies += "com.typesafe.akka" %% "akka-remote" % "2.1.2",
merge in Proguard := true,
mergeStrategies in Proguard += append("reference.conf"),
options in Proguard += keepMain("A"),
options in Proguard += keepMain("B"),
options in Proguard += "-dontoptimize", // reduce time for proguard
options in Proguard += ProguardConf.akka
)
)
}
object ProguardConf {
val akka = ....
}
我想在我的项目中使用sbt-proguard插件,但我需要在Build.scala[=27中设置它=] 文件.
我阅读了文档,但只有 build.sbt 文件的示例,这对我来说不起作用。 我需要知道如何为我的 Build.scala 文件配置插件。
这是回购的 link:https://github.com/sbt/sbt-proguard/blob/master/README.md#example
仅供参考:我正在使用 scala.version=2.11.4 和 sbt.version=0.13.5
(注意:sbt目前推荐multi-project build.sbt而不是build.scala。)
一些 sbt 插件使用脚本来测试自己,它在 src/sbt-test
下设置假构建。如果您找到一个,它可能包含有关如何设置插件的不错示例。
sbt-proguard 创建了一个名为 akka 的示例,据称由 Akka 项目使用。
import sbt._
import sbt.Keys._
import com.typesafe.sbt.SbtProguard._
object SampleBuild extends Build {
import ProguardKeys.{ mergeStrategies, merge, options }
import ProguardOptions.keepMain
import ProguardMerge.append
lazy val proguardAkka = Project(
id = "proguard-akka",
base = file("."),
settings = Defaults.defaultSettings ++ proguardSettings ++ Seq(
scalaVersion := "2.10.1",
libraryDependencies += "com.typesafe.akka" %% "akka-remote" % "2.1.2",
merge in Proguard := true,
mergeStrategies in Proguard += append("reference.conf"),
options in Proguard += keepMain("A"),
options in Proguard += keepMain("B"),
options in Proguard += "-dontoptimize", // reduce time for proguard
options in Proguard += ProguardConf.akka
)
)
}
object ProguardConf {
val akka = ....
}