java - 未从 ext 块 build.gradle 解析依赖版本
问题描述
我像这样在我的build.gradle
文件中添加了一些依赖项
ext {
boxableVersion = '1.5.bq'
}
dependencies {
implementation group: "com.github.dhorions", name:'boxable', version:${boxableVersion}
}
在我将 JDK 版本从 1.8 更改为 11 之前,它一直在无缝工作。现在,当我尝试构建项目时,我的build.gradle
文件中出现以下错误
无法使用 Gradle 分发版“ https://services.gradle.org/distributions/gradle-6.0-bin.zip ”运行分阶段构建操作。构建文件“/home/christine/christine/projectsFromGit/pdfcreator/build.gradle”行:43 评估根项目“pdfcreator”时出现问题。在 org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler 类型的对象上找不到参数 [build_4fl1snfk49qgbmumnf1gg989h$_run_closure3$_closure11@d7c9f2a] 的方法 $()。
如果我像这样直接给出版本,则项目正在成功构建
implementation group: "com.github.dhorions", name:'boxable', version:'1.5.bq'
我怎样才能像以前一样在外部提供版本?
解决方案
您的依赖项声明中的以下语法version:${boxableVersion}
无效。它与您的 JDK 版本无关,只是${...}
在 Gradle DSL 或 Groovy 语法中没有任何意义。
如果你想在 'ext' 属性中定义版本,你可以直接引用这个属性version: boxableVersion
(ext 属性通过“groovy 魔法”直接在脚本中可用),或者你可以使用 Groovy字符串插值表示法(请注意双引号"
)
version: "${boxableVersion}"
或者,以更简单的方式:
implementation "com.github.dhorions:boxable:${boxableVersion}"
推荐阅读
- php - 使用 for 循环在树枝中打印出一个数组
- flutter - 在 null 上调用了方法“[]”。接收者:null 尝试调用:[]("status")
- javascript - addEventListener for 循环中基于索引的参数
- r - 如何在 R 中遍历数据框名称的向量?
- csv - 为什么使用 pyspark 读取 csv 文件时会出现错误?
- android - LocationManager 首次在三星设备中未提供确切位置
- python - 如何在 Python 中编写无限 for 循环并从数组项中添加变量?
- javascript - 如何在 PHP 中访问 JavaScript 变量?
- nestjs - 没有找到“AlicuotasIva”的存储库。看起来这个实体没有在当前的“默认”连接中注册?
- angular - 更改后订阅未更新