通过 build.gradle 任务在项目目录中创建 version.txt 文件
create version.txt file in project dir via build.gradle task
为我的无知提前道歉。我是 gradle.
的新手
我的目标是在我的 build.gradle 文件中执行一些任务,其中每当我 运行 gradle
终端时,都会在我的项目目录中创建一个文件 'version.txt'命令在我的项目根目录中。此 'version.txt' 文件需要包含构建的版本元数据,例如:
Version: 1.0
Revision: 1z7g30jFHYjl42L9fh0pqzmsQkF
Buildtime: 2016-06-14 07:16:37 EST
Application-name: foobarbaz app
(^Revision 将是 HEAD 的 git 提交哈希)
我尝试重新使用以下资源中的片段,但无济于事,可能是因为这些资源已过时:
http://mrhaki.blogspot.com/2015/04/gradle-goodness-use-git-commit-id-in.html
http://mrhaki.blogspot.com/2010/10/gradle-goodness-add-incremental-build.html
我正在使用 gradle 版本 2.14(这是最新版本)。
任何帮助 and/or 见解将不胜感激。谢谢!
你提到的例子几乎是正确的。通过一些小的调整,它可以按预期工作:
import java.text.SimpleDateFormat
import org.ajoberstar.grgit.Grgit
plugins {
id "org.ajoberstar.grgit" version "1.7.2"
}
version = 1.0
task versionTxt() {
doLast {
new File(projectDir, "version.txt").text = """
Version: $version
Revision: ${grgit.head().abbreviatedId}
Buildtime: ${new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date())}
Application-name: foobarbaz app
"""
}
}
运行 gradle versionTxt
以获得所需的输出。
为我的无知提前道歉。我是 gradle.
的新手我的目标是在我的 build.gradle 文件中执行一些任务,其中每当我 运行 gradle
终端时,都会在我的项目目录中创建一个文件 'version.txt'命令在我的项目根目录中。此 'version.txt' 文件需要包含构建的版本元数据,例如:
Version: 1.0
Revision: 1z7g30jFHYjl42L9fh0pqzmsQkF
Buildtime: 2016-06-14 07:16:37 EST
Application-name: foobarbaz app
(^Revision 将是 HEAD 的 git 提交哈希)
我尝试重新使用以下资源中的片段,但无济于事,可能是因为这些资源已过时: http://mrhaki.blogspot.com/2015/04/gradle-goodness-use-git-commit-id-in.html http://mrhaki.blogspot.com/2010/10/gradle-goodness-add-incremental-build.html
我正在使用 gradle 版本 2.14(这是最新版本)。
任何帮助 and/or 见解将不胜感激。谢谢!
你提到的例子几乎是正确的。通过一些小的调整,它可以按预期工作:
import java.text.SimpleDateFormat
import org.ajoberstar.grgit.Grgit
plugins {
id "org.ajoberstar.grgit" version "1.7.2"
}
version = 1.0
task versionTxt() {
doLast {
new File(projectDir, "version.txt").text = """
Version: $version
Revision: ${grgit.head().abbreviatedId}
Buildtime: ${new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date())}
Application-name: foobarbaz app
"""
}
}
运行 gradle versionTxt
以获得所需的输出。