在gradle构建期间更新README.md中的版本号

时间:2015-10-02 02:06:40

标签: android gradle markdown

我正在开发一个Android库(aar)项目。该项目包含一个README.md文件,该文件又包含以下行:

   ... declare library dependency:

   Gradle: `compile 'com.acme:mylibrary:1.0.0@aar'`

我的gradle.properties文件包含:

VERSION_NAME=1.0.0

问题是目前我必须手动保持两个文件同步。我想要做的是保留VERSION_NAME属性并将其值替换为README.md

1 个答案:

答案 0 :(得分:0)

如果您有一些模式可以找出您使用版本号的位置,那么就像创建任务和根据正则表达式替换文本一样简单。

类似的东西:

task replaceVersionInREADME << {
    // Maven
    ant.replaceregexp(match:'<version>([0-9\\.]+)</version>', replace:"<version>${version}</version>", flags:'g', byline:true) {
        fileset(dir: '.', includes: 'README.md')
    }
    // Gradle
    ant.replaceregexp(match:'com\\.acme\\:mylibrary\\:([0-9\\.]+)', replace:"com.acme:mylibrary:${version}", flags:'g', byline:true) {
        fileset(dir: '.', includes: 'README.md')
    }
}

根据需要更改正则表达式。