gpt4 book ai didi

java - JAXB 混合剧集和 xjc :javaType in jar library

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:36 25 4
gpt4 key购买 nike

如果有其他项目依赖的Java库(通过Maven依赖.jar)。在此库中,有一个 XSD 文件定义了一些 xs:simpleType,这些文件还使用 xjc:javaType 元素进行注释,将简单类型映射到该库中现有的 java 类和适配器类。这一切都工作正常,但现在我想创建一个 xs:complexType。我让 org.jvnet.jaxb2.maven2:maven-jaxb2-plugin 0.8.2 版从复杂类型和附加 .episode 文件创建一些 java beans。

在我的第二个项目中,我导入库,将 xsd 文件解压到架构目录中,并让project2.xsd 导入library.xsd,因为它使用简单和复杂类型。为了避免重复生成已存在的 bean,我将库作为依赖项添加到 org.jvnet.jaxb2.maven2:maven-jaxb2-pluginepisodes 标记中。但现在插件提示它无法解析 xsd 文件并在每个类型定义行上引发异常。

我认为使用剧集(它们不包括 simpleTypes?)和 xjc:javaType 注释存在一些问题?这个问题有某种解决方法吗?我在网上找不到太多关于这个问题的信息。感谢您的任何提示。

最佳答案

我通过使用 maven-hyperjaxb3-plugin 实现了同样的目标检查如何完成:

            <plugin>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>maven-hyperjaxb3-plugin</artifactId>
<version>0.5.4</version>
<executions>
<execution>
<id>id1</id>
<inherited>false</inherited>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<args>
<param>-npa</param>
</args>
<generateDirectory>target/generated-sources/xjc2</generateDirectory>
<generatePackage>com.target.package</generatePackage>
<extension>true</extension>
<schemaIncludes>
<include>mine.xsd</include>
</schemaIncludes>
<forceRegenerate>false</forceRegenerate>
<removeOldOutput>true</removeOldOutput>
<verbose>true</verbose>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1.12</version>
</dependency>
</dependencies>
</plugin>

以下是项目依赖项:

<dependencies>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1.12</version>
</dependency>

<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.1</version>
</dependency>

<dependency>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>hyperjaxb3-ejb-runtime</artifactId>
<version>0.3</version>
</dependency>

<!-- Roundtrip -->
<dependency>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>hyperjaxb3-ejb-roundtrip
</artifactId>
<version>0.3</version>
</dependency>
</dependencies>

我定义了任何类型的简单和复杂类型,它的工作方式就像一个魅力。希望对您有帮助!

关于java - JAXB 混合剧集和 xjc :javaType in jar library,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12620558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com