为什么在Play 2.3中,托管的css/less资产未被sbt-less插件处理?

fer*_*k86 13 less sbt playframework playframework-2.3

我升级到2.3,并按照使用LESS CSS中描述的说明使用less插件.但是,较少的文件未被编译为css并被发送到target.但JS文件正在运行.

我所做的只是添加less和jslint插件,如下所示:

addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.0.0")
Run Code Online (Sandbox Code Playgroud)

文件结构:

/assets
  /javascripts -> *.js files are linted and staged
  /stylesheets -> *.less files not working
Run Code Online (Sandbox Code Playgroud)

fer*_*k86 13

谢谢!它现在修好了.

  • 仅在使用*.scala完整构建文件时.将以下导入添加到构建中:

    import com.typesafe.sbt.web.SbtWeb.autoImport._
    import com.typesafe.sbt.less.Import.LessKeys
    
    Run Code Online (Sandbox Code Playgroud)
  • 将以下内容添加到项目设置:

    includeFilter in (Assets, LessKeys.less) := "*.less"
    
    // for minified *.min.css files
    LessKeys.compress := true
    
    Run Code Online (Sandbox Code Playgroud)

  • 如果您对我不熟悉,则需要将:includeFilter传递给(Assets,LessKeys.less):="​​ .less"到项目的settings()函数,否则它将无法找到所有文件越少. (2认同)

小智 12

我有同样的问题,并通过在build.sbt中添加这两行来修复它:

includeFilter in (Assets, LessKeys.less) := "*.less"
excludeFilter in (Assets, LessKeys.less) := "_*.less"
Run Code Online (Sandbox Code Playgroud)