繁体   English   中英

使用 JAXB 时我不想要 package-info.java?

[英]I dont want package-info.java while using JAXB?

什么是用于 JAXB 的package-info.java 的替代品。 我不想在项目中使用这个类。 jaxb 跳过这个的替代设置是什么?。 谢谢你。

确实没有必要。 如果你想避免 jaxb 在你的代码中添加一些奇怪的东西,比如 ns2 或其他什么,你可以使用它。 如果你不喜欢在你的 xml 中看到奇怪的东西,你应该把 package-info.java 放在你的包中来清楚地定义东西:例如命名空间。

这是我的意思的一个清晰示例Jaxb 生成的 xml - 根元素前缀问题

如果您使用 xjc 命令生成 JaxB 对象。 使用-npa选项可以达到目的。

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html

当使用 maven 插件cxf-xjc-plugin时,这也与 Java 11 兼容

这是添加参数的示例https://cxf.apache.org/cxf-xjc-plugin.html

<xsdOption>
    <xsd>${basedir}/.../yourXSD.xsd</xsd>
    <packagename>your.package.name</packagename>
    <extensionArgs>
        <extensionArg>-npa</extensionArg>
        <extensionArg>-no-header</extensionArg>
    </extensionArgs>
</xsdOption>

如果你使用no.nils.wsdl2java gradle 插件https://github.com/nilsmagnus/wsdl2java

你最好像这样添加 -xjc-npa选项:

wsdl2java {
    ...
    wsdlsToGenerate = [
            [
                    '-xjc-npa',
                ...
            ]
    ]
}

完整的选项列表在这里: https : //docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM