hyperjaxb を介して実際のスキーマを実行しようとしています。jaxb を使用してスキーマを繰り返しテストしましたが、jaxb は毎回スキーマを正しくインポートします。ただし、hyperjaxb で同じスキーマから hibernate アノテーション付きの Java クラスを生成しようとすると、次のエラーが発生します。
[ERROR] Error while parsing schema(s).Location [ file:/C:/path/to/src/main/resources/schema.xsd{4,32}].
org.xml.sax.SAXParseException; systemId: file:/C:/path/to/src/main/resources/schema.xsd;
lineNumber: 4; columnNumber: 32;
Using "http://annox.dev.java.net" customizations requires the "-Xannotate" switch
to enable this plug-in.
このエラー メッセージをグーグルで検索し、それに関する他の投稿を読みましたが、問題を解決する明確な手順は見つかりませんでした。私が見つけた最も近いものは、 annox プラグインis activated by the -Xannotate command-line argument
.
このリンクを読みましたが、xsd ファイルに次を追加してもエラーは解消されxsd
ませんでしたjaxb
。
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
jaxb:version="2.1"
xmlns:annox="http://annox.dev.java.net"
jaxb:extensionBindingPrefixes="annox"
問題をすばやく再現するために、関連するすべての資料を含む zip ファイルをこのリンクにアップロードしました。目的のスキーマを含むプロジェクトの zip ファイルです。問題を再現するには、コマンド ラインで解凍したプロジェクトのルート ディレクトリに移動しmvn clean install
、エラーを再現するように入力するだけです。
このエラーを解決するにはどうすればよいですか?
編集:
pom.xml のプラグイン構成に以下を追加して実験しましたが、これまでのところ成功していません。
<args>
<arg>-Xannotate</arg>
</args>
2番目の編集:
@lexicore の提案を に追加しましたpom.xml
が、結果は であり、このリンクをクリックしてnull pointer exception
読むことができます。他の人がより簡単に使用できるようにするために、このリンクに完全な電流を含めています。この改訂版と上記の zip ファイルを合わせれば、数分で問題を再現できます。これは設定の問題ですか、それともバグですか?hyperjaxb
pom.xml
pom.xml