我想在构建时用静态资产(html,css,js)替换一些简单变量(例如版本号或CDN URL前缀)。播放2.x本身无法做到这一点,但也许有一个通用的sbt任务在文件中进行变量插值?
答案 0 :(得分:2)
您可以使用sbt-editsource插件。它在源文本上执行简单的变量替换。您需要将sources目录设置为静态资产所在的位置。这是detailed guide。
答案 1 :(得分:0)
虽然我不知道你的需求,而且Kim的答案很好,你也可以通过application.conf +小解析方法配置CDN:
conf/application.conf
:
cdn.cdn1="http://cdn1.domain.tld/"
cdn.cdn2="http://cdn2.domain.tld/"
Application.java
public static String cdnResource(String cdnId, String filePath) {
return Play.application().configuration().getString("cdn."+cdnId) + filePath;
}
用法:
<script src='@Application.cdnResource("cdn1", "bootstrap/js/bootstrap.min.js")' type="text/javascript"></script>
...
<img src='@Application.cdnResource("cdn2", "template/images/logo.png")' alt="" >