`enablePlugins`方法使用的未定义变量?

时间:2014-12-15 08:15:41

标签: scala playframework playframework-2.0 sbt sbt-plugin

我的build.sbt看起来像这样:

lazy val root = (project in file(".")).enablePlugins(PlayScala)


name := "slick"

version := "1.0"

scalaVersion := "2.11.4"

libraryDependencies ++= Seq(
  "com.typesafe.slick" %% "slick" % "2.1.0",
  "org.postgresql" % "postgresql" % "9.3-1102-jdbc4",
  "org.slf4j" % "slf4j-simple" % "1.6.4"
)

project/plugins.sbt看起来像这样:

resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"

// The Play plugin
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.6")

// web plugins

addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.1")

addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.1")

addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.0.0")

build.sbt的第一行,我看到了这样的代码:

lazy val root = (project in file(".")).enablePlugins(PlayScala)

我无法理解的是PlayScala,它应该是一个未定义的变量。但是当我使用sbt来构建项目时,sbt没有抱怨这个。有没有人有这方面的想法?

1 个答案:

答案 0 :(得分:1)

  

我无法理解的是PlayScala,它应该是一个未定义的变量。

请参阅Controlling the import with autoImport

  

当auto插件提供一个稳定字段(如val或名为autoImport的对象)时,该字段的内容是在set,eval和.sbt文件中导入的通配符。