Mavenビルド中に.xsdファイルを処理中に問題が発生しました。 jaxb2プラグインを使用していますが、私の外部の依存関係を.xsdファイルからダウンロードする必要があります。問題は、これらの依存関係(.xsd)が不安定な環境にあり、mavenがxsdファイルをダウンロードできないため、ビルドが失敗することが非常に多いことです。ビルドの失敗を防ぐためにjaxbプラグインをxsdを何度もダウンロードしようとするように設定するには?私のpom.xml構成のmavenのxsd依存関係を処理するときにIOExceptionがスローされる
パート:
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<configuration>
<strict>false</strict>
<extension>true</extension>
<args>
<arg>-Xfluent-api</arg>
<arg>-XtoString</arg>
<arg>-Xsetters</arg>
<arg>-XenumValue</arg>
</args>
<plugins>
<plugin>
<groupId>net.java.dev.jaxb2-commons</groupId>
<artifactId>jaxb-fluent-api</artifactId>
<version>${jaxb.fluentapi.version}</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.9.3</version>
</plugin>
</plugins>
<bindingDirectory>src/main/resources/jaxb</bindingDirectory>
<bindingIncludes>
<include>bindings.xml</include>
</bindingIncludes>
<schemas>
<schema>
<fileset>
<!-- Defaults to schemaDirectory. -->
<directory>${project.basedir}/src/main/resources/orbeons</directory>
<!-- Defaults to schemaIncludes. -->
<includes>
<include>*.xsd</include>
</includes>
</fileset>
</schema>
</schemas>
</configuration>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${project.basedir}/generated-sources/orbeons</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
Maven自体(チェックやビルドに失敗して失敗している)によって強制されず、誰もドキュメントを読んでいないため、何が起こったのか分かりませんでした。 ;-)他のオプションについては:antTaskやexec Mavenコール? –
@LIttleAncientForestKami "_nobodyはdocs_を読み取ります" - 非常に正しい!残念ながら。蟻?本当に? Mavenを使って、Ant/Ivyの設定を冗長に取り除きましたが、ここで再導入しますか? ;)私は初めてあなたのプロフィールで "_Javavore_"という言葉を読んだことがあります。大好きです!そのためにあなたを1000に押し込んだ。 –
* BTW:なぜプラグインが "Plugin Naming Convention and Apache Maven Trademark"を大胆な文字で尊重しているのか不思議です* [こちら](https://github.com/highsource/maven- jaxb2-plugin/issues/26#issuecomment-66928927)。プラグインはこの命名規則が確立されるずっと前にこの方法で命名されました。名前を変更するとコミュニティが壊れます。だから、Apacheは私に休暇中止の手紙を送ってもらえます。私はこの「あなたが私たちの大会を尊重しない」ことに疲れているので、プロジェクトを終了します。 – lexicore