拥有Play 2.4网络应用程序,我正在尝试使用sbt-uglify从我的.min.js
文件中创建.js
。
路线声明:
GET /assets/*file controllers.Assets.at(path="/public", file)
管道阶段:
pipelineStages := Seq(uglify)
覆盖Assets.at
:
override def at(path: String, fileName: String, cacheAggressively: Boolean): Action[AnyContent] = {
super.at(path, redirectToMin(path, fileName), cacheAggressively)
}
private def redirectToMin(path: String, fileName: String): String = {
val resourceName = some logic to crated the minfile...
Play.maybeApplication.flatMap(_.resource(resourceName).map(_ => minFile)).getOrElse(fileName)
}
为了测试一切在开发模式下工作,如post中所述,我使用pipelineStages in Assets := Seq(uglify)
,并生成缩小的javascript文件。但是,当我使用start
启动应用程序以指示我们正在生产时,不会生成缩小版本。我真的很感激你对我下一步的看法。
PS1 :我正在使用sbt-uglify-1.0.3,如果它有任何区别。
PS2 :我正在使用sbt-less作为样式表,并且正确缩小了这些样式。