3

独自の Maven プロジェクトで jaxb2-maven-plugin を使用して生成している共通の XSD (データ型、語彙など) のセットがあります。2 番目のプロジェクトでは、コンパイル時にこれらの XSD の 1 つ以上を参照する必要がありますが、結果のアーティファクトにそれらを含めたくありません。カタログ ファイルを作成しましたが、すべてを取得する以外は問題なく動作します。

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.6</version>
<executions>
    <execution>
        <goals>
            <goal>xjc</goal>
        </goals>
    </execution>
</executions>
<configuration>
    <outputDirectory>${basedir}/src/main/java</outputDirectory>
    <target>2.1</target>
    <catalog>catalog.cat</catalog>
</configuration>

私はプラグインのドキュメントを熟読しましたが、詳細が非常に軽くなっています。すべてのプロジェクトがスキーマのコピーを取らなくても、共通のスキーマを再利用する方法はありますか?

ありがとう

4

1 に答える 1

1

これは私maven-jaxb2-pluginができることです:

Maven Artifact からのスキーマのコンパイル

ドキュメンテーション サイトは現在非常に不安定なため、ドキュメンテーションのスニペットを以下に示します。

<configuration>                                                                                         
    <forceRegenerate>true</forceRegenerate>                                                         
    <schemas>                                                                                       
        <schema>
            <dependencyResource>                                                            
                <groupId>org.jvnet.jaxb2.maven2</groupId>                               
                <artifactId>maven-jaxb2-plugin-tests-po</artifactId>                    
                <!-- Can be defined in project dependencies or dependency management -->
                <version>${project.version}</version>                                   
                <resource>purchaseorder.xsd</resource>                                  
            </dependencyResource>                                                           
        </schema>                                                                               
    </schemas>                                                                                      
</configuration>

これがサンプルプロジェクトです。

于 2014-04-04T21:57:57.077 に答える