当前位置: 首页 > 知识库问答 >
问题:

如何建议maven-jaxb2-plugin在两个地方使用同一个类?

董子航
2023-03-14

我正在使用maven-jaxb2-plugin生成JAXB类。我无法控制WSDL或XSD。

XSD指定了一个单一的“MyObject”,或者一个包含“MyObject”列表的父对象。我知道它们是一样的。但是插件没有(自然地)。有没有办法让它对两者都使用一个(非内部)类?否则,我需要写很多重复的代码...

谢谢

共有1个答案

刘升
2023-03-14

是的,您可以使用绑定进行控制,例如在这里,您可以强制使用同一个类(因为它们被重新定义,所以您会收到警告)。

无论如何,可能您正在使用错误生成的WSDL/XSD与多个命名空间(例如,它们使用相同的代码库,但暴露了多个endpoint,因为它们是相同的类,但对您来说是多个不同的类)。

尽管您“无法控制WSDL”,但如果不能,也许您可以统一(将一个脚本写入CI/CD管道)将它们放在一起(例如,一个根目录中有多个xsd)。

不幸的是,许多人编写和发布网络服务不正确,并为我们这些使用它们的人带来了很多(不必要的)头痛:/

 类似资料:
  • 问题内容: 我想将多个xsd模式解组到 同一 文件夹下的不同程序包中。我尝试了两个插件,并且似乎都可以在这两种配置下正常工作,但是在使用maven- jaxb2-plugin的情况下,eclipse插件会无限期地生成类(由于= true),但是如果我不指定forceRegenerate,它将不会生成运行时完全没有第二组和第三组类,我的配置是否有问题? jaxb2-maven-插件 maven-ja

  • 我有多个xsd模式,我想将它们解组到同一文件夹下的不同包中。我尝试了这两个插件,两个插件似乎都能很好地处理这两种配置,但在maven-jaxb2-plugin的情况下,eclipse插件会无限期地生成类(因为=true),但是如果我没有指定forceRegenate,当我运行我的配置有任何问题吗? jaxb2 maven插件 maven-jaxb2-plugin 以及build helper ma

  • 问题内容: 我有一个项目,该项目的架构A和架构B都在同一个名称空间中。两者都导入模式C,它也使用相同的名称空间。如何重用A和B的JAXB类以分离包,同时将C生成的JAXB类重用到公共包? 我已经知道我应该使用情节并将模式C生成的情节用作绑定文件,以分别执行模式A和B。问题是我不知道如何引用此生成的情节文件。 这是一个例子: 这将导致在以下情况下创建情节文件: 我如何在A和B的执行中引用此情节/绑定

  • 我对Jaxb和这个maven-jaxb2插件非常陌生 这是我的. xsd文件: 这是我的。xjb文件: 当它生成时,它给出的java类有点像: 但是我不想为用户和用户列表重复相同的代码,我可以通过注释或定义正则表达式来做什么。请建议一些方法。 我只是想知道这段代码要写什么 因此,当它创建用户类时,它会显示@xmlRootElement(name='user'),而其他类的@xmlRootEleme

  • 问题内容: 我有一个Maven项目,我想从中创建两个可执行的jar文件。一个将与用户交互使用,第二个将作为计划作业运行,读取前者生成的日志文件。最后,除了MANIFEST.MF文件中的Main- Class属性外,我希望两个jar文件都相同。 我正在使用maven-antrun- plugin创建一个可执行jar,在我尝试通过引入Maven配置文件尝试创建第二个jar文件之前,这似乎工作得很好。我

  • 如果您使用类似这样的插件来解析xsd文件,那么在从jdk7升级到JDK8时会遇到以下异常: 您如何使这个插件与JDK8一起工作?