variables - 带有变量 dir 的 gradle fileTree
问题描述
我不确定这是否受 fileTree 支持。我搜索了文档,所有示例都使用了具体(绝对或相对)路径。这就是我想做的。
ext {
externalProjectRoot "c:/AnotherProject"
}
implementation fileTree(dir: ${externalProjectRoot}/lib', include: '*.jar')
如果我执行以下操作,它会起作用。
implementation fileTree(dir: 'c:/AnotherProject/lib', include: '*.jar')
所以我怀疑 fileTree 函数不支持 dir 属性的变量。如果没有,我还有什么其他选择?
谢谢!
解决方案
您需要使用"
而不是'
:
代替
implementation fileTree(dir: '${externalProjectRoot}/lib', include: '*.jar')
和
implementation fileTree(dir: "${externalProjectRoot}/lib", include: '*.jar')
在此答案中查看有关使用 ' 和 " 之间区别的更多解释:Gradle Single Quotes vs Double Quotes:
Gradle 构建脚本是用 Groovy 编写的。Groovy 有双引号和单引号字符串字面量。主要区别在于双引号字符串文字支持字符串插值
推荐阅读
- assembly - 在IDA中,如何在ARM机器代码中将除法改为乘法?
- c++ - 如何在 C++ 中调用返回 bool 并具有两个 int 参数的函数而没有其参数?
- cuda - cuvidGetDecoderCaps CUDA SDK 无法获取解码能力
- javascript - 通过 LEFT JOIN 提取数据,每个 ID 有多个数据
- angular - Angular 11 路由无法获取语言参数
- npm - 强制在包中包含 node_modules?
- javascript - Cypress:使用 module.exports 导出和导入类
- mysql - 编写一个 MySQL 查询以获得所需的结果
- javascript - 将具有相同属性的多个对象转换为单个对象 - Javascript
- python - 没有足够的值在 python 循环中解压