scala – 如何在Play 2.3.4中设置资产指纹?
版本:
>玩2.3.4 我遵循了documentation on playframework.com来启用公共资产的指纹识别,但是对routes.Assets.versioned的调用从不会生成带摘要散列的版本化文件名。 build.sbt中的相关行: scalaVersion := "2.11.2" pipelineStages := Seq(rjs,digest) project / plugins.sbt中的相关行: addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.4") addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.5") addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.0.0") conf / routes中的相关行: GET /assets/*file controllers.Assets.versioned(path="/public",file: Asset) 主要模板: @(title: String,lang: String,cssClasses: String,bodyContents: Html) <!DOCTYPE html> <html lang="@lang"> <head> <meta charset="UTF-8"> <title>@title</title> <script type="text/javascript" src="@routes.Assets.versioned("javascript/components/main.js")"></script> </head> <body> <div class="layout @cssClasses"> @bodyContents </div> </body> </html> 输出总是: <!DOCTYPE html> <html lang="el"> <head> <meta charset="UTF-8"> <title>[title]</title> <script type="text/javascript" src="/assets/javascript/components/main.js"></script> </head> <body> ... </body> </html> 我没有编译错误。指纹只是“不工作”。我假设我缺少一些简单的东西,但我看不到它。 其他注意事项 >运行查找。项目根目录中的名称“* .js”显示没有开头附加摘要的文件,如文档建议 有人建议吗 谢谢! 注意:我已经开始在目标/ src_managed / main / routes_reverseRouting.scala中查看生成的类来调试生成的版本化方法,但这似乎对于相当直接的东西来说是过分的。 解决方法
首先,您应该更新到sbt 0.13.5,因为sbt-web及其插件使用0.13.5中引入的称为“自动插件”的sbt功能。
资产管理方式不是在开发模式下触发,您必须通过sbt start(或sbt dist,但需要更多时间)进行测试。 版本化方法只是检查资产是否具有.md5后缀的随播广告。您应该检查这些文件是否存在于target / web中。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |