gradle - 如何从包含的构建中获取 Gradle 任务的属性?
问题描述
我有一个复合 Gradle 构建,并且在根构建中我想在其中一个包含的构建中引用任务的属性,这可能吗?
例如,如果我有这个结构:
rootBuild
+ includedBuild1
+ project1
+ project2
+ includedBuild2
我知道在build.gradle
“project1”中我可以使用这个语句来输出我感兴趣的属性:
println shadowJar.archiveFile.get()
出于某种原因,我不明白,从这个项目的父 build.gradle ("includedBuild1") 我不能直接引用 'shadowJar' 插件任务,但我能够像这样获得我感兴趣的属性:
println tasks.getByPath(':project1:jar').archiveFile.get()
现在我想在根构建中引用这个相同的属性。但是,尝试这样的事情表明没有在引用任务上设置属性“archiveFile”(即输出“null”):
println gradle.includedBuild('includedBuild1').task(':project1:jar').properties['archiveFile']
有没有办法从复合构建的根目录引用我感兴趣的属性?
解决方案
推荐阅读
- android - 如何制作可点击的动画文本视图?
- php - Laravel/Vue.js - 试图获取非对象的属性。可以在 Vue 中访问它,但不能在 Laravel 中访问
- python - Sort list with alphanumeric items by letter first
- php - Sort array of months with laravel collection
- css - 如何使用css将全大写句子的首字母大写
- jackson - Jackson 注释 @JsonUnwrapped 忽略 @JsonProperty 值
- sharepoint - 将 Office 插件部署到 SharePoint 本地环境
- javascript - 自 Firefox 62 以来的空 IFrame
- java - java-stream的map方法中的i++
- python - 从python脚本制作独立可执行文件时如何解决“ImportError:没有名为dis3的模块”