![](/img/trans.png)
[英]how to generate java class from xsd by using xmlbeans in gradle
[英]How to generate java classes from XSD using Java 11 and gradle?
Java 11 已删除对 JAXB 和 xjc 等工具的支持,这些工具会从 java 文件生成 java 文件。 我在 Gradle 中找不到很多用于 xjc 生成的示例,并尝试了一些选项,但到目前为止没有运气。 此外,应该在 spring 启动 Gradle 项目中添加哪些依赖项以提供对 JAXB 的全面支持?
添加正确的依赖项是成功的关键。
... project.ext { jaxbTargetDir = file("src/generated/java") } configurations { xsd2java } dependencies { xsd2java "com.sun.xml.bind:jaxb-xjc:3.0.2" xsd2java "com.sun.xml.bind:jaxb-impl:3.0.2" xsd2java "com.sun.xml.bind:jaxb-core:3.0.2" xsd2java "com.sun.activation:jakarta.activation:2.0.1" xsd2java "jakarta.xml.bind:jakarta.xml.bind-api:3.0.1" } task xsd2java() { doLast { jaxbTargetDir.mkdirs() ant.taskdef(name: 'xjc', classname: 'com.sun.tools.xjc.XJCTask', classpath: configurations.xsd2java.asPath) ant.jaxbTargetDir = jaxbTargetDir ant.xjc( destdir: '${jaxbTargetDir}', package: 'dk.myproject.domain.service.request', schema: 'src/build-resources/project.xsd' ) ant.xjc( destdir: '${jaxbTargetDir}', package: 'dk.myproject.domain.service.response', schema: 'src/build-resources/myproject.xsd' ) } } compileJava.dependsOn xsd2java ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.