0
我有資源領域(svn修訂版)。我怎樣才能通過Gradle在我的領域獲得svn修訂版本,而不是通過我的手來完成?如何在Gradle for Android中獲得SVN修訂版?
我有資源領域(svn修訂版)。我怎樣才能通過Gradle在我的領域獲得svn修訂版本,而不是通過我的手來完成?如何在Gradle for Android中獲得SVN修訂版?
您可以修改以下解決方案explained here,它打印出當前的SVN修訂版。
// File: build.gradle
task svninfo << {
new ByteArrayOutputStream().withStream { os ->
def result = exec {
executable = 'svn'
args = ['info']
standardOutput = os
}
def outputAsString = os.toString()
def matchLastChangedRev = outputAsString =~ /Last Changed Rev: (\d+)/
println "Latest Changed Revision #: ${matchLastChangedRev[0][1]}"
}
}
// Example output for svn info:
// Path: .
// URL: http://svn.host/svn/project
// Repository Root: http://svn.host/svn/
// Repository UUID: 9de3ae54-a9c2-4644-a1a1-838cb992bc8e
// Revision: 33
// Node Kind: directory
// Schedule: normal
// Last Changed Author: mrhaki
// Last Changed Rev: 33
// Last Changed Date: 2010-09-03 14:25:41 +0200 (Fri, 03 Sep 2010)
試試這個
task svnversion {
description 'Get SVN revision number.'
new ByteArrayOutputStream().withStream { os ->
def result = exec {
executable = 'svnversion'
standardOutput = os
}
ext.revid = os.toString()
}
}
您可以
task printsvn(description: 'Demonstrate calling svnversion task.') {
println 'Implementation-Build #' + svnversion.revid
}
結果
$ gradle這個printsvn
測試:printsvn
實施 - 建造#3071
生成成功
總時間:0.776秒
是不是我的答案幫助? –