使用Mojo Jaxb2 maven插件创建Java类时生成hashCode()和equals() [英] Generating hashCode() and equals() when creating Java classes using Mojo Jaxb2 maven plugin

查看:106
本文介绍了使用Mojo Jaxb2 maven插件创建Java类时生成hashCode()和equals()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理的代码是从 org.codehaus.mojo 使用 jaxb2-maven-plugin 从XSD架构生成Java类。我正在寻找一种方法来自动实现 equals() hashCode()这些类的方法,但它似乎没有办法。我知道还有其他JAXB2 Maven插件可以做到这一点(例如http://confluence.highsource.org/display/J2B/Home),但我想知道你们之前是否有人遇到过这个问题,如果有办法的话修理它。我正在使用 xjc 目标生成类。

The code I'm working on is using jaxb2-maven-plugin from org.codehaus.mojo to generate Java classes from XSD schema. I'm looking for a way to automatically implement equals() and hashCode() methods for those classes, but it seems there is not a way. I know that there are other JAXB2 Maven plugins that do that (http://confluence.highsource.org/display/J2B/Home for example), but I was wondering if anyone of you encountered this issue before and if there's a way for fixing it. I'm generating the classes using the xjc goal.

推荐答案

JAXB2您提到的基础知识不是 maven-jaxb2-plugin 的属性,它是一组独立的JAXB 2.x插件,可以与XJC一起使用 - 或者 jaxb2-maven-plugin 或其他。

JAXB2 Basics you're mentioning is not a property of maven-jaxb2-plugin, it is a standalone set of JAXB 2.x plugins you can use with XJC - or jaxb2-maven-plugin or whatever.

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxb2-maven-plugin</artifactId>
            <version>1.3.1</version>
            <executions>
                <execution>
                    <id>xjc</id>
                    <goals>
                        <goal>xjc</goal>
                    </goals>
                </execution>
           </executions>
           <configuration>
                <arguments>
                     <argument>-Xequals</argument>
                     <argument>-XhashCode</argument>
                </arguments>
           </configuration>
           <dependencies>
                <dependency>
                    <groupId>org.jvnet.jaxb2_commons</groupId>
                    <artifactId>jaxb2-basics</artifactId>
                    <version>0.11.1</version>
                </dependency>
           </dependencies>
       </plugin>

我想问的问题 - 为什么不使用 maven-jaxb2-plugin ?与Codehaus插件相比,它具有更多功能 - 包括对JAXB2插件的配置支持。

What I wanted to ask - why not just use maven-jaxb2-plugin? It has so much more functionality compared to the Codehaus plugin - including configuration support for JAXB2 plugins.

这篇关于使用Mojo Jaxb2 maven插件创建Java类时生成hashCode()和equals()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆