[英]XJC Maven Plugin(jaxb2-maven-plugin) Java 11 Migration Issues
[英]Maven Release Plugin with JAXB issues
我们已经建立了一个使用Maven Release Plugin的项目,其中包括一个阶段,该阶段解压缩从Artifactory提取的JAR XML模式的包装,以及一个生成XJC类的阶段。 我们正在使用Maven 2.2.1版。
不幸的是,后一个阶段在前一个阶段之前执行,这意味着它没有为该模式生成XJC类。 部分POM.XML看起来像:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<!-- phase>generate-sources</phase -->
<goals>
<goal>unpack</goal>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>ourgroupid</groupId>
<artifactId>ourschemas</artifactId>
<version>5.1</version>
<outputDirectory>${project.basedir}/src/main/webapp/xsd</outputDirectory>
<excludes>META-INF/</excludes>
<overWrite>true</overWrite>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>maven-buildnumber-plugin</artifactId>
<version>0.9.6</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>true</doCheck>
<doUpdate>true</doUpdate>
</configuration>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<configuration>
<schemaDirectory>${project.basedir}/src/main/webapp/xsd</schemaDirectory>
<schemaIncludes>
<include>*.xsd</include>
<include>*/*.xsd</include>
</schemaIncludes>
<verbose>true</verbose>
<!-- args>
<arg>-Djavax.xml.validation.SchemaFactory:http://www.w3.org/2001/XMLSchema=org.apache.xerces.jaxp.validation.XMLSchemaFactory</arg>
</args-->
</configuration>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
我尝试使用它进行谷歌搜索,不幸的是我遇到了成千上万个链接的情况,这些链接实际上都不相关,所以如果有人知道如何配置发行插件步骤的顺序以确保完整,我将不胜感激。在执行之前b。
谢谢
执行的顺序存在一些问题(例如MNG-3719 , MNG-2258 ),但在Maven 2.2.1中应该没问题,并且插件在绑定到同一插件时应以与POM中列出的顺序相同的顺序执行阶段 。 确实,对您的POM进行了一些修改:
<phase>generate-sources</phase>
的注释 execution
元素中添加了id
我得到以下输出:
$ mvn generate-sources [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] Building Q3070794 [INFO] task-segment: [generate-sources] [INFO] ------------------------------------------------------------------------ [INFO] [dependency:unpack {execution: step1-unpack}] [INFO] Configured Artifact: c3p0:c3p0:0.9.1.2:jar [INFO] Unpacking /home/pascal/.m2/repository/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2.jarto /home/pascal/Projects/stackoverflow/Q3070794/src/main/webapp/xsd with Includes null and excludes:META-INF/ [INFO] [dependency:copy {execution: step1-unpack}] [INFO] Configured Artifact: c3p0:c3p0:0.9.1.2:jar [INFO] Copying c3p0-0.9.1.2.jar to /home/pascal/Projects/stackoverflow/Q3070794/src/main/webapp/xsd/c3p0-0.9.1.2.jar [INFO] [jaxb2:generate {execution: step2-xjc}] [INFO] Started execution. ...
在 jaxb2:generate
之前完成了dependency:unpack
和dependency:copy
。 除非我缺少任何东西,否则这是预期的结果。 用Maven 2.2.1测试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.