4

我想使用 Scala 将sbt-jslint集成到现有的 Play Framework 2.0.x 项目中。

有没有人这样做过?将 jslint 集成到play test运行中并将故障作为输出的集成部分呈现的配置步骤是什么?

4

1 回答 1

4

(这个答案来自@jzsfkzm,他对github 问题发表了很好的回应,但没有选择在这里重新发布他的答案。)

在我们的项目中,插件被添加到plugins.sbt并在Build.scala中配置。下面的例子。

项目/plugins.sbt

addSbtPlugin("com.github.philcali" % "sbt-jslint" % "0.1.3")

项目/Build.scala

import sbtjslint.Plugin._
import sbtjslint.Plugin.LintKeys._

...

val localSettings = lintSettings ++ inConfig(Compile)(Seq(
    // jslint
    sourceDirectory in jslint <<= (baseDirectory)(_ / "public" / "javascripts"),
    excludeFilter in jslint := "generated" || "lib",
    flags in jslint := Seq("sloppy", "continue", "vars", "nomen")
))

def playProject = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA).settings(
    localSettings : _*
)

我们用来运行 jslint 的任务是play jslint,它将检查您的代码并创建一个 xml 文件target/jslint/results.xml以供进一步使用。例如,您可以在 Jenkins Violations 插件中使用它。

于 2012-10-18T12:51:55.267 回答