我想将多个xsd模式解组到 同一 文件夹下的不同程序包中target/generated- sources/xjc
。我尝试了两个插件,并且似乎都可以在这两种配置下正常工作,但是在使用maven-
jaxb2-plugin的情况下,eclipse插件会无限期地生成类(由于forceRegenerate
=
true),但是如果我不指定forceRegenerate,它将不会生成运行时完全没有第二组和第三组类mvn clean package
,我的配置是否有问题?
jaxb2-maven-插件
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>xjc-scores</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<packageName>com.generated.scores</packageName>
<schemaDirectory>src/main/resources/schemas/scores</schemaDirectory>
</configuration>
</execution>
<execution>
<id>xjc-videos-ramp</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<packageName>com.generated.ramp</packageName>
<schemaDirectory>src/main/resources/schemas/ramp</schemaDirectory>
<clearOutputDir>false</clearOutputDir>
</configuration>
</execution>
<execution>
<id>xjc-schedules</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<packageName>com.generated.schedules</packageName>
<schemaDirectory>src/main/resources/schemas/schedules</schemaDirectory>
<clearOutputDir>false</clearOutputDir>
</configuration>
</execution>
</executions>
<configuration>
</configuration>
</plugin>
maven-jaxb2-插件
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.8.3</version>
<executions>
<execution>
<id>xjc-scores</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<generatePackage>com.generated.scores</generatePackage>
<schemaDirectory>src/main/resources/schemas/scores</schemaDirectory>
<removeOldOutput>true</removeOldOutput>
</configuration>
</execution>
<execution>
<id>xjc-ramp</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<generatePackage>com.generated.ramp</generatePackage>
<schemaDirectory>src/main/resources/schemas/ramp</schemaDirectory>
<removeOldOutput>false</removeOldOutput>
</configuration>
</execution>
<execution>
<id>xjc-schedules</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<generatePackage>com.generated.schedules</generatePackage>
<schemaDirectory>src/main/resources/schemas/schedules</schemaDirectory>
<removeOldOutput>false</removeOldOutput>
</configuration>
</execution>
</executions>
<configuration>
<forceRegenerate>true</forceRegenerate>
</configuration>
</plugin>
和build-helper-maven-plugin配置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>target/generated-sources/xjc</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-sources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>target/generated-sources/xjc</directory>
<targetPath>target/classes</targetPath>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
一般建议:在bindings.xjb
而不是使用单独generatePackage
的不同执行中指定软件包。
<jxb:bindings schemaLocation="common1.xsd" node="/xsd:schema">
<jxb:schemaBindings>
<jxb:package name="mypackage.commonclasses"/>
</jxb:schemaBindings>
</jxb:bindings>
generatePackage
不适用于多种模式。
并请提交一个错误
https://java.net/jira/browse/MAVEN_JAXB2_PLUGIN
引用了多个模式和Eclipse的问题。我来看看。
ps。因此免责声明:我是的作者maven-jaxb2-plugin
。
我有多个xsd模式,我想将它们解组到同一文件夹下的不同包中。我尝试了这两个插件,两个插件似乎都能很好地处理这两种配置,但在maven-jaxb2-plugin的情况下,eclipse插件会无限期地生成类(因为=true),但是如果我没有指定forceRegenate,当我运行我的配置有任何问题吗? jaxb2 maven插件 maven-jaxb2-plugin 以及build helper ma
我使用Maven3.3.3和maven-jaxb2-plugin Version0.12.1从XSD模式生成java类。XSD所在的地址返回HTTP 302,插件抛出: 是否可以指定xjc编译器遵循302到正确的链接,或者不去尝试下载XSD?
我对Jaxb和这个maven-jaxb2插件非常陌生 这是我的. xsd文件: 这是我的。xjb文件: 当它生成时,它给出的java类有点像: 但是我不想为用户和用户列表重复相同的代码,我可以通过注释或定义正则表达式来做什么。请建议一些方法。 我只是想知道这段代码要写什么 因此,当它创建用户类时,它会显示@xmlRootElement(name='user'),而其他类的@xmlRootEleme
如果您使用类似这样的插件来解析xsd文件,那么在从jdk7升级到JDK8时会遇到以下异常: 您如何使这个插件与JDK8一起工作?
对于所有给定的XSD,jaxb2 maven插件不会生成包信息。java文件。(它只生成类)。我们仍然使用Java1.8 我的pom看起来像这样: 有什么想法吗?
问题内容: 我在配置时无法从WSDL和都存在于同一标准目录中的多个XSD文件生成Java类的问题。 如何在内联XSD中使用jaxb2 maven插件?仅在答案正确地建议使用插件配置中的参数这一点上相关,而该问题确实与内联XSD有关,而我的XSD是外部的。 插件目标参数在此处列出。 我的插件配置是: 我正在用进行测试,但插件忽略了调试输出中看到的 问题答案: 通过检查传递给JAXB XJC的参数的M