JavaToWS错误:java.lang.NoClassDefFoundError

JavaToWS错误:java.lang.NoClassDefFoundError,java,gradle,cxf,Java,Gradle,Cxf,我正在使用cxfjavatows根据我的Java代码创建一个WSDL文件。我正在使用Gradle进行构建。我的Java代码引用了另一个项目,我通过settings.gradle和build.gradle文件将它们绑定在一起。这一切都很好 我看到的问题是JavaToWS在二级项目中的一个类上得到了NoClassDefFoundError。这就好像JavaToWS无法访问项目的类路径一样。Eclipse找到了它所需要的一切,并且项目的构建没有错误。失败的只是JavaToWS步骤。关于如何让JavaT

我正在使用cxfjavatows根据我的Java代码创建一个WSDL文件。我正在使用Gradle进行构建。我的Java代码引用了另一个项目,我通过settings.gradle和build.gradle文件将它们绑定在一起。这一切都很好

我看到的问题是JavaToWS在二级项目中的一个类上得到了NoClassDefFoundError。这就好像JavaToWS无法访问项目的类路径一样。Eclipse找到了它所需要的一切,并且项目的构建没有错误。失败的只是JavaToWS步骤。关于如何让JavaToWS查看我的类路径,有什么想法吗?是否有一种方法可以将多个参数传递给“-cp”参数

以下是我的gradle.build文件中的JavaToWS步骤:

task java2ws(type: JavaExec) {

    ext {
        outputDir = file("src/main/java")
        mainDir = file("$buildDir/classes/main")
        wsdlDir = file("src/main/resources/wsdl")
    }

    main = 'org.apache.cxf.tools.java2ws.JavaToWS'

    classpath = configurations.cxf

    // Arguments to be passed to JavaToWS.
    args '-cp', mainDir
    args '-s', outputDir
    args '-d', wsdlDir
    args '-classdir', mainDir
    args '-o', 'MyService.wsdl'
    args '-createxsdimports' 
    args '-verbose'
    args '-frontend', 'jaxws'
    args '-databinding', 'jaxb'
    args '-wsdl'
    args '-wrapperbean', 'com.foo.MyService'    
}

通过将类路径行更改为:

classpath = configurations.cxf
致:


通过将类路径行更改为:

classpath = configurations.cxf
致: