我有旧版SBT构建文件。作为构建过程的一部分,我需要替换文本文件中的一个特定字符串。 特别是在public / index.html文件中的Play Framework应用程序中,我需要将占位符字符串替换为GA UUID代码。
答案 0 :(得分:1)
您可以编写一个自定义资源生成器来读取文件,替换占位符并将其写入文件。
resourceGenerators in Compile += Def.task {
val content = IO.read(resourceDirectory.value / "index.html")
val out = (resourceManaged in Compile).value / "index.html"
IO.write(out, content.replace("<build-time>", System.currentTimeMillis.toString))
Seq(out)
}
答案 1 :(得分:1)
实际上,已确认的解决方案中缺少一个额外的“正在编译”(由Aki提供):
resourceGenerators in Compile += Def.task {
val content = IO.read((resourceDirectory in Compile).value / "index.html")
val out = (resourceManaged in Compile).value / "index.html"
IO.write(out, content.replace("<build-time>", System.currentTimeMillis.toString))
Seq(out)
}
我本应该添加评论,但我的“声誉”不足:)