如何在Gradle for Android中获得SVN修订版?

Via*_*lav 1 svn android revision gradle gradle-eclipse

我在资源中有字段(svn修订版).如何使用Gradle在我的领域中获得svn修订版,那不是用我的手来做的?

veg*_*4me 5

您可以修改以下解决方案,在此解释,该解决方案打印出当前的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)
Run Code Online (Sandbox Code Playgroud)