定义Gradle任务

时间:2020-02-21 18:14:27

标签: gradlew

我想在build.gradle文件中定义genJaxb任务。当我尝试使用gradlew.build重建项目时,出现以下错误:

评估项目':kodilla-soap'时发生问题。

无法获得类型为org.springframework.boot.gradle.tasks.bundling.BootJar的任务':kodilla-soap:bootJar'的未知属性'genJaxb'。

请在下面找到代码:

task genJaxb {
ext.sourcesDir = "${buildDir}/generated-sources/jaxb"
ext.classesDir = "${buildDir}/classes/jaxb"
ext.schema = "src/main/resources/kodilla.xsd"
outputs.dir classesDir

doLast() {
    project.ant {
        taskdef name: "xjc", classname: "com.sun.tools.xjc.XJCTask",
                classpath: configurations.jaxb.asPath
        mkdir(dir: sourcesDir)
        mkdir(dir: classesDir)

        xjc(destdir: sourcesDir, schema: schema) {
            arg(value: "-wsdl")
            produces(dir: sourcesDir, includes: "**/*.java")
        }

        javac(destdir: classesDir, source: 1.8, target: 1.8, debug: true,
              debugLevel: "lines,vars,source",
              classpath: configurations.jaxb.asPath) {
            src(path: sourcesDir)
            include(name: "**/*.java")
            include(name: "*.java")
        }

        copy(todir: classesDir) {
            fileset(dir: sourcesDir, erroronmissingdir: false) {
                exclude(name: "**/*.java")
            }
        }
    }
}

}

有人知道我应该怎么做吗?请帮忙,我还是learnig:)

0 个答案:

没有答案