簡體   English   中英

如何從 build.gradle 文件運行 WSDLToJava?

[英]How can I run WSDLToJava from a build.gradle file?

我能夠成功地從命令行運行 WSDLToJava 類以從 WSDL 生成 JaxB 類。

   java -Xmx128M  
        -cp "C:\cxf\apache-cxf-3.1.6\lib\cxf-manifest.jar;
             C:\java\jdk1.7.0_80\lib\tools.jar"
        -Djava.util.logging.config.file="C:\cxf\apache-cxf-3.1.6
         \etc\logging.properties" 
         org.apache.cxf.tools.wsdlto.WSDLToJava 
         -d generated -frontend jaxws21 -b C:\Project\jaxb-bindings.xml 
          C:\Project\Service.wsdl

如何從“build.gradle”文件運行相同的命令行? 我對 Gradle 完全陌生。

預先感謝您的幫助。 皮特

雖然有一些 Gradle 插件可以實現這一點,但我認為通過JavaExec任務直接進行調用同樣容易。 將以下內容添加到您的build.gradle

ext.cxfVersion = "3.1.6"

configurations {
    wsdl2java
}

dependencies {
    wsdl2java("org.apache.cxf:cxf-tools-wsdlto-core:${cxfVersion}")
    wsdl2java("org.apache.cxf:cxf-tools-wsdlto-frontend-jaxws:${cxfVersion}")
    wsdl2java("org.apache.cxf:cxf-tools-wsdlto-databinding-jaxb:${cxfVersion}")
}

task wsdl2java(type: JavaExec) {
    main = "org.apache.cxf.tools.wsdlto.WSDLToJava"
    classpath = configurations.wsdl2java
    // Uncomment to add JVM arguments if necessary (e.g. for cert-based security)
    //jvmArgs = [
    //    "-Djavax.net.ssl.keyStore=${keystorePath}",
    //    "-Djavax.net.ssl.keyStorePassword=${keystorePassword}"
    //]
    args = [
        "-d", "src/gen/java",
        "example.wsdl"
        // Uncomment and remove the previous line to run for multiple WSDL files
        //"-wsdlList, "wsdls.txt"
    ]
}

// If you want to be able to debug the wsdl2java task from Eclipse, add the following
//eclipse {
//    classpath {
//        plusConfiguration += [configurations.wsdl2java]
//    }
//}

通過運行gradlew wsdl2java執行任務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM