org.codehaus.mojo xmlbeans-maven-plugin を使用して、maven generate-sources プロセスの一部として OGC KML 2.2 の Java クラスを生成しようとしています。Java コードは正しく生成されているように見えますが、コンパイル中に「package org.apache.xmlbeans」という不平を言う大量のエラーが発生します。XMLBeans は明らかに依存関係にあり、私の ~/.m2 リポジトリに存在します。クラスがそこにあることを確認するために jar を調べました。XMLBeans はターゲット/生成されたソースに Java ファイルを正常に生成しているように見えますが、コンパイル中に何らかの形でクラスパスに存在しません。
org.apache.xmlbeans 依存関係のスコープを変更しようとしましたが、役に立ちませんでした。
ここに pom.xml があります
<modelVersion>4.0.0</modelVersion>
<groupId>net.opengis</groupId>
<artifactId>ogc-kml</artifactId>
<version>2.2.0</version>
<packaging>pom</packaging>
<name>ogc-kml</name>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xmlbeans-maven-plugin</artifactId>
<version>2.3.3</version>
<executions>
<execution>
<goals>
<goal>xmlbeans</goal>
</goals>
</execution>
</executions>
<inherited>true</inherited>
<configuration>
<download>true</download>
<schemaDirectory>src/main/xsd</schemaDirectory>
</configuration>
</plugin>
</plugins>
</build>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
</dependency>
</dependencies>
</dependencyManagement>
プロジェクトは、 http://schemas.opengis.net/kml/2.2.0/からの 2 つの xsd を含む単一の src/main/xsd フォルダーで構成されます。フォルダー構造全体はhttps://github.com/iancw/maven-xmlbeans-questionにあります。
~/.m2 リポジトリから xmlbeans jar をクラスパスに配置すると、クラスを手動でコンパイルできます。
xmlbeans$ javac -classpath ~/.m2/repository/org/apache/xmlbeans/xmlbeans/2.4.0/xmlbeans-2.4.0.jar org/w3/x2005/atom/*.java org/w3/x2005/atom/impl/*.java net/opengis/kml/x22/*.java x0/oasisNamesTcCiqXsdschemaXAL2/*.java x0/oasisNamesTcCiqXsdschemaXAL2/impl/*.java net/opengis/kml/x22/*.java net/opengis/kml/x22/impl/*.java
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
xmlbeans$
私は多くの例を見てきましたが、これを正しく行っているようです。私は、この問題について他の誰かが不平を言うのを見たことがありません。どんなMaven Mavenにも提案がありますか?
(興味深いことに、私は xmlbeans 依存関係の 2.4.0 と 2.6.0 の両方を試しましたが、maven は 2.6.0 バージョンを私のリポジトリにダウンロードしたことがないようです)