【发布时间】:2014-07-03 17:47:12
【问题描述】:
我知道 sbt 中有scalacOptions。但是通过addCompilerPlugin 添加的选项在scalacOptions 中不存在。
我在 sbt 控制台中输入 show scalacOptions 并没有像 -Xplugin 这样的东西。
那么当我在写一个 sbt 插件时,我怎样才能得到real scalac 选项
我的 sbt 信息
> libraryDependencies
[info] List(org.scala-lang:scala-library:2.10.4, org.scala-lang:scala-reflect:2.10.4, io.netty:netty:3.9.0.Final, net.sandrogrzicic:scalabuff-runtime:1.3.7, org.scalamacros:quasiquotes:2.0.0, org.specs2:specs2:2.3.11:test, org.scalamacros:paradise:2.0.0:plugin->default(compile))
> show scalacOptions
[info] List(-feature, -deprecation, -language:implicitConversions, -language:dynamics)
[success] Total time: 0 s, completed Jul 3, 2014 4:04:09 PM
> version
[info] 0.0.1-SNAPSHOT
> sbt
sbtBinaryVersion sbtClearOnFailure sbtDependency sbtPlugin sbtPopOnFailure sbtResolver sbtStashOnFailure
> sbtVersion
[info] 0.13.5
>
我的 build.sbt
libraryDependencies ++= Seq(
"org.scala-lang" % "scala-reflect" % "2.10.4",
"io.netty" % "netty" % "3.9.0.Final",
"net.sandrogrzicic" %% "scalabuff-runtime" % "1.3.7",
"org.scalamacros" %% "quasiquotes" % "2.0.0",
"org.specs2" %% "specs2" % "2.3.11" % "test")
scalacOptions ++= Seq(
"-feature",
"-deprecation",
"-language:implicitConversions",
"-language:dynamics"
)
parallelExecution in Test := false
addCompilerPlugin("org.scalamacros" % "paradise" % "2.0.0" cross CrossVersion.full)
【问题讨论】:
-
我很高兴看到我不是唯一一个在 sbt 上遇到很多麻烦的人。它只是没有文档,所以对项目进行 git clone 并尝试跟踪 ./main/src/main/scala/sbt/Defaults.scala 中的源代码