当前位置: 首页 > 面试题库 >

使用Mojo Jaxb2 Maven插件创建Java类时生成hashCode()和equals()

弓泰
2023-03-14
问题内容

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


问题答案:

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

        <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插件的配置支持。



 类似资料:
  • 我已经习惯了从命令行使用XJC工具。但是我意识到我不能使用它生成带有和方法的Java类。我用了这个: 1.可以用CXF XJC Maven插件从DTD文件生成和方法吗?

  • 问题内容: 我想使用Gradle任务为 Java 项目生成Java类,类似于Android插件如何使用表示法创建,例如: 用例是我正在开发一个开源应用程序,该应用程序需要使用API​​密钥和机密。我拥有不致力于我的VCS 的密钥和秘密。 到目前为止,我有这个: 并且有效- 在指定位置生成该文件。但是它非常脆弱。明确命名软件包很容易出错。只要文件可以在其他软件包中生成(例如,在的根目录),只要能够使

  • 我试图使用Java以编程方式从XSD文件生成JAXB类。我使用以下代码片段来实现这一点: 生成的类只包含字段的方法。但是,我还希望包括、和方法。如何在生成代码时做到这一点?

  • 我试图从一个XSD文件生成一个包含toString、equals和hashCode方法的Java类。我得到了toString的工作,但我无法弄清楚如何让CXF插件生成equals和hashCode方法。 这是我的XSD文件: 很好,我意识到工件不存在,但我不知道如何配置CXF插件来生成equals和hashCode方法。您知道如何配置CXF插件来生成equals和hashCode方法吗?提前感谢您

  • 问题内容: 我在为自己创建的类编写方法时遇到了麻烦。此类旨在在TreeSet中使用,因此,它实现Comparable。该类具有以下变量: 这是该方法的实现。我希望按其成本来组织这些Node结构,因此,返回简单减法的结果。 我还实现了一种方法。 说了这么多,我有几个问题: 由于实施了新方法,因此应该实施新方法吗? 如何使用这些变量实施新的hashCode ?(请注意,Matrix类型的变量矩阵已实现