XSD を POJO にコンパイルするために codehaus jaxb2-maven-plugin
v1.5 を使用していますが、生成されたパッケージ名はパッケージ名を強制的に小文字にします (したがって、ターゲット名前空間がhttp://example.com/sampleNamespaceの場合、生成されたパッケージはcom.example.samplenamespace
) です。
私は少しグーグルで検索しましたが、ほとんどの人がアンダースコアがドットに変更されて問題を抱えていることとその解決策を見つけましたが、名前空間の大文字と小文字を保持するための特定の何かを見つけることができないようです.
注意: 生成されたパッケージ名を繰り返してオーバーライドする必要はありません。そのため、maven 構成の generatePackage オプションは私には適していません。
アンダースコアの変更を見つける前に、私はそれと通常のスペースを試しました-両方ともそこにドットを貼り付けました。
何か案は?
スキーマ:
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:t="http://example.com/sampleNamespace" targetNamespace="http://example.com/sampleNamespace"
jaxb:version="2.0">
<complexType name="MyFirstClass">
<sequence>
<element name="MyFirstElement" type="string" />
</sequence>
</complexType>
</schema>
Maven 設定:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
</plugin>