首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向JAXB生成的包信息中添加注释

向JAXB生成的包信息中添加注释
EN

Stack Overflow用户
提问于 2014-08-07 13:37:04
回答 1查看 3.4K关注 0票数 1

我一直在使用烦恼在我的jaxb生成的类上添加注释(通过绑定文件),但是我找不到一种方法直接在包(Pack-info.java)上添加注释。

我一直试图在我的bindings.xml中做这样的事情:

代码语言:javascript
复制
<jaxb:schemaBindings>
    <jaxb:package name="my.package">
        <annox:annotate>
            <annox:annotate annox:class="my.Annotation" />
        </annox:annotate>
    </jaxb:package>
</jaxb:schemaBindings>

但是jaxb抱怨说,annox:annotate不会出现在那里。

还有别的办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-22 07:09:47

作者在这里。

这目前还不被支持,但可以很容易地实现。请在这里提交一个问题:https://github.com/highsource/annox/issues

这样做的方法是使用@target="package"。因此,您必须自定义这个包中的某些内容(类,随便什么),并将target属性设置为package。然后,注释将转到package-info.java

更新

这是在JAXB2注释插件1.0.0中实现的。

https://github.com/highsource/jaxb2-annotate-plugin/issues/1

示例

代码语言:javascript
复制
<jaxb:bindings
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:annox="http://annox.dev.java.net"
    jaxb:extensionBindingPrefixes="annox"

    jaxb:version="2.1">

    <jaxb:bindings schemaLocation="schema.xsd" node="/xsd:schema">
        <jaxb:bindings node="xsd:complexType[@name='issueJIIB43Type']">
            <annox:annotate target="class">@javax.xml.bind.annotation.XmlRootElement("someElement")</annox:annotate>
            <annox:annotate target="package">@javax.xml.bind.annotation.XmlSchema(elementFormDefault=javax.xml.bind.annotation.XmlNsForm.QUALIFIED)</annox:annotate>
            <annox:annotatePackage>@javax.annotation.Generated({"XJC"})</annox:annotatePackage>
        </jaxb:bindings>
    </jaxb:bindings>
</jaxb:bindings>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25184035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档