在Play2.3.x构建中加速外部Webjar源代码的Javascript丑化

在Play2.3.x构建中加速外部Webjar源代码的Javascript丑化,javascript,playframework,sbt,uglifyjs2,webjars,Javascript,Playframework,Sbt,Uglifyjs2,Webjars,我正在使用PlayFramework2.3.6和Webjars作为web库依赖项。 也就是说,my build.sbt包含类似“org.webjars”%“angularjs”%“1.2.26”的内容。 为了提高Javascript源代码的质量,我在build.sbt中添加了pipelineStages:=Seq(rjs,uglify,digest,gzip) 现在,当运行Play的“stage”或“dist”任务时,看起来所有Javascript文件都变丑了,也就是说,来自Webjar库的文件

我正在使用PlayFramework2.3.6和Webjars作为web库依赖项。 也就是说,my build.sbt包含类似“org.webjars”%“angularjs”%“1.2.26”的内容。 为了提高Javascript源代码的质量,我在build.sbt中添加了pipelineStages:=Seq(rjs,uglify,digest,gzip)

现在,当运行Play的“stage”或“dist”任务时,看起来所有Javascript文件都变丑了,也就是说,来自Webjar库的文件也变丑了。
[信息]Uglify2文件:/target/web/rjs/build/lib/angularjs/angular.js

我本以为来自外部Webjar库的源代码不会受到影响,因为已经有了一个小型版本。 一个问题是,丑陋的过程需要太长的时间。
我怎样才能加快丑陋化进程

有两种方法可以加快Javascript构建步骤:

  • 在运行
    激活器之前,安装node.js并设置
    导出SBT\u OPTS=“$SBT\u OPTS-Dsbt.jse.engineType=node”
    。使用node.js而不是默认的Javascript引擎可以显著提高速度。更多详细信息可在此处找到:,请参阅关于sbt网站的部分

  • 自定义构建步骤,例如

    • 通过添加到build.sbt:
      RjsKey.optimize:=“无”
    • 通过添加到build.sbt来限制UGLIFIT:例如,uglify中的
      includeFilter:=GlobFilter(“myjs/*.js”),
您可以在github站点上找到这些插件选项的更多详细信息:


尽管sbt丑陋的文档说excludeFilter应该排除Webjar和公用文件夹,但事实并非如此

遵循Martin的响应自定义部分,除了他在RjsKeys中输入了y拼写错误外,还添加了一个s:

RjsKeys.optimize := "none"