私はJavaコードに基づいてWSDLファイルを作成するためにCXF JavaToWSを使用しています。私はビルドのためにGradleを使用しています。私のJavaコードは別のプロジェクトを参照し、settings.gradleとbuild.gradleファイルを使ってそれらを結びつけました。それはすべてうまくいきます。JavaToWSエラー:java.lang.NoClassDefFoundError
私が見ている問題は、JavaToWSがセカンダリプロジェクトにあるクラスのいずれかでNoClassDefFoundErrorを取得していることです。 JavaToWSがプロジェクトのクラスパスにアクセスできないかのようです。 Eclipseは必要なものすべてを見つけ、プロジェクトはエラーなしで構築されます。それは失敗するJavaToWSのステップです。どのように私はクラスパスを見るためにJavaToWSを得ることができるかに関する任意のアイデア?おそらく複数の引数を "-cp"引数に渡す方法はありますか?ここで
は私JavaToWSが私gradle.buildファイルの手順です:
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'
}