ниже приведен фрагмент нашего скрипта сборки 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
}
}
Для этого создайте файл .ear из кода нашего проекта, созданного из Java 8. Это прекрасно работает при использовании Gradle 3.1, но когда мыпри переходе на 5.1, при запуске скрипта появляется ошибка ниже.
"* Что пошло не так: возникла проблема при оценке корневого проекта 'HKSLFDirectory'.
Не удалось установить неизвестноесвойство "classesDir" для основных классов типа org.gradl e.api.internal.tasks.DefaultSourceSetOutput. "