gradle - 从 3.1 迁移到 5.1 时出现 GRADLE 错误
问题描述
下面是我们的 gradle 构建脚本的片段
def binDir = file("bin")
def libDir = "WebContent/WEB-INF/lib"
def testReportDir = file('testReport')
def outputDir = file("output")
def envParam = "local"
repositories {
mavenCentral()
}
sourceSets {
project.webAppDirName = 'WebContent'
if (project.hasProperty("env")) {
envParam = env
outputDir = file("output/$envParam")
}
main {
java { srcDirs = ['src/main/java'] }
resources { srcDirs = ['src/main/resources','config/' + envParam] }
output.classesDir = binDir
}
test {
java { srcDirs = ['src/main/java', 'src/test/java'] }
resources { srcDirs = ['src/main/resources', 'src/test'] }
output.classesDir = binDir
compileClasspath = sourceSets.main.compileClasspath
runtimeClasspath = output + compileClasspath
}
}
它的作用是,从我们从 Java 8 构建的项目代码中构建一个 .ear 文件。这在使用 Gradle 3.1 时工作正常,但是当我们迁移到 5.1 时,当我们运行脚本时会出现以下错误。
"* 出了什么问题:评估根项目 'HKSLFDirectory' 时出现问题。
无法为 org.gradl e.api.internal.tasks.DefaultSourceSetOutput 类型的主要类设置未知属性 'classesDir'。”
解决方案
推荐阅读
- selenium - 带有 clj-webdriver 和 chromedriver 的 Selenium 3.141.59 在未从 Guava 中找到的方法上失败
- java - 我可以使用 indexOf() 在 for 循环中返回两个不同的值吗?
- c++ - c++ 检查数组是否等于未创建的数组
- java - 您如何在所有活动中使用工具栏
- django - 找不到页面(404)请求方法:
- java - java - 如何在启动时自动执行Java应用程序中的方法?
- assembly - 错误 LNK2019:在 VS2019 中的函数 _printf 中引用了无法解析的外部符号 __imp____acrt_iob_func
- python - 在 Mac 上更新 Python3 和 Pip3
- javascript - 如何在expressJS中处理POST请求中的参数
- node.js - 开玩笑测试与 ssh2-sftp-client 库集成的功能