Java 使用gradle任务生成wsdl文档
我正在尝试使用gradle生成wsdl工件。wsdl java生成失败,我在调试日志或正常构建日志中都没有看到相应的消息。下面是我的build.gradle文件Java 使用gradle任务生成wsdl文档,java,gradle,wsdl,Java,Gradle,Wsdl,我正在尝试使用gradle生成wsdl工件。wsdl java生成失败,我在调试日志或正常构建日志中都没有看到相应的消息。下面是我的build.gradle文件 plugins { id 'java' } group 'com.example' version '1.0.0SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } configurations { jaxws } depend
plugins {
id 'java'
}
group 'com.example'
version '1.0.0SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
configurations { jaxws }
dependencies { jaxws 'com.sun.xml.ws:jaxws-tools:2.2.6' }
dependencies {
compile 'com.sun.xml.bind:jaxb-impl:2.2.6'
}
dependencies {
implementation 'org.springframework:spring-core:5.1.7.RELEASE'
implementation 'org.springframework:spring-context:5.1.7.RELEASE'
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.25'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
task generatewsdlartifacts{
def rootDir = file("${buildDir}/generated/sources/wsdl")
def javaDir = file("${rootDir}/java")
def wsdlJarDir = file("${buildDir}/wsdllib")
def classesDir = file("${rootDir}/classes")
def wsdlDir=file("${projectDir}/src/main/resources/wsdl")
def wsdlFile = file("${wsdlDir}/mywsdl.wsdl")
doLast{
// classesDir.mkdirs()
//javaDir.mkdirs()
//wsdlJarDir.mkdirs()
copy {
from "${wsdlFile}"
into "${classesDir}"
}
ant {
taskdef(name: 'wsimport',
classname: 'com.sun.tools.ws.ant.WsImport',
classpath: configurations.jaxws.asPath)
wsimport(keep: true,
destdir: classesDir,
sourcedestdir: javaDir,
extension: "true",
verbose: "true",
quiet: "false",
xnocompile: "false",
xendorsed: true,
wsdlLocation: "${wsdlFile}")
wsdl: "${wsdlFile}")
{
binding(dir:"${wsdlDir}", includes:"jaxb-bindings.xml,jaxws-bindings.xml")
xjcarg(value: "-XautoNameResolution")
}
}
ant.jar(
destfile: wsdlJarDir.path + "/mywsdl.jar",
basedir: classesDir
)
}
}
compileJava.dependsOn generatewsdlartifacts
当我在下面进行渐变构建时,它会失败,并出现下面的错误
任务::generatewsdlartifacts失败
失败:生成失败,出现异常。
*其中:
生成文件“\Build.gradle”行:56
这里需要一些帮助尝试使用
--stacktrace运行
在您的配置中,在wsdlLocation:“${wsdlFile}”)
附近似乎是无效字符,应该是wsdlLocation:“${wsdlFile}”,实际上我已经确定了问题。JDK 11不支持wsimport。我们如何解决这个问题?
FAILURE: Build failed with an exception.
* Where:
Build file '<path of build file>\build.gradle' line: 56