如何Date在 Gradle 中获取表示构建过程开始时间的对象?
在我正在编写的一个插件中,我需要将构建的日期和时间存储在构建的存档中(它主要用于在应用程序的标题栏中显示日期和构建号,以使 QA 工作更轻松)。
我希望正在构建的多个子项目具有相同的日期,因此理想情况下我只想使用构建的开始。作为一种解决方法,我将日期保存在静态字段中,但这会伤害我的眼睛。我在来源中看到有多个org.gradle.util.Clock实例保存此类信息,但我找不到从插件中检索一个的方法。
我已成功使用以下代码检索构建时间时钟:
Clock clock = project.gradle.services.get(BuildRequestMetaData.class).buildTimeClock
Date startDate = new Date(clock.getStartTime())
Run Code Online (Sandbox Code Playgroud)
尽管如此,它还远远不够理想,因为它使用 Gradle 内部 API:getServices()方法是在org.gradle.api.internal.GradleInternal接口中定义的。
您的插件可以在根项目上设置/获取动态属性:
def root = project.rootProject
if (!root.hasProperty("startTime")) {
root.startTime = new Date()
}
// do whatever necessary with root.startTime
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11594 次 |
| 最近记录: |