无法使用Gradle 4.x中的xjc从具有外部xsd的WSDL生成soap客户端存根文件

时间:2019-04-30 16:40:54

标签: soap soap-client xjc wsimport

我有一个部署在服务器中的wsdl文件。此WSDL引用了外部XSD文件。 我正在尝试使用gradle build生成客户端Java文件,但是我发现变量是“已经定义的错误”。

我尝试了wsdlimport,它给出了同样的错误。

以下是我的毕业任务:

task genJaxb {
    ext.sourcesDir = "${buildDir}/generated-sources/jaxb"
    ext.classesDir = "${buildDir}/classes/jaxb"
    ext.schema = "http://val.mettles.com:8080/Adapter/esmd/AdapterService/AdapterDocSubmissionDeferredRequest?wsdl"

    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(schema: schema,
                    package: "hello.wsdl") {
                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")
                }
            }
        }
    }
}

我需要为给定的SOAP服务生成客户端存根文件。

请帮助我解决错误。

0 个答案:

没有答案
相关问题