2016-07-06 106 views
0

我想將Git修訂信息添加到使用SBT構建的Java應用程序。目前我使用的代碼生成功能如http://www.scala-sbt.org/0.13/docs/Howto-Generating-Files.html所述,用revision字段生成一個類。一個servlet類讀取該字段並使用修訂信息呈現HTML頁面。一切正常,除了生成的文件是瞬態的並且IDE(在這種情況下爲Intellij IDEA)報告servlet類中的錯誤。很明顯,我可以生成整個servlet類,但是在構建定義中似乎有點太多了。有沒有辦法讓這個文件「permament」,或者我這樣做完全錯誤?添加修訂信息

回答

0

你可能會遇到這個問題:sbt/issues/1664

如果你可以使用生成的scala,sbt-buildinfo值得一看。你可以像這樣添加git修訂:

import sbtbuildinfo.{ BuildInfoKey, BuildInfoPlugin } 
import sbtbuildinfo.BuildInfoKeys._ 

myProject 
    .enablePlugins(BuildInfoPlugin) 
    .settings(
    buildInfoKeys ++= Seq[BuildInfoKey](
     BuildInfoKey.action("revision") { 
     Process("git rev-parse --short HEAD").!!.trim 
     }) 
    }