XSDからJAXBによって生成されたクラスのセットを使用したいプロジェクトがあります。これらのクラスでは、XMLとJSONのマーシャル/アンマーシャリングを行いたいと思います。実行時にjavenb.propertiesがMavenでビルドされていない場合
私は、私が必要とすることをするためにMoxy Eclipselinkが必要であることを理解しました。 Antプロジェクトとしてクラスとプロセスをテストした後、より良い管理のためにMavenに移すことにしました。
ただし、実行時にjaxb.propertiesファイルが認識されないようです。
私のプロジェクトには、オブジェクト用のMavenアーティファクトと、ロジック/処理用のアーティファクトがあります。私はjaxb.propertiesをどこに置いて読み込めるかを調べようとしていました。
私はオブジェクトがプロジェクト
/src/main/resources/jaxb.properties
/src/main/java/[namespace]/jaxb.properties
ロジックプロジェクト
/src/main/resources/jaxb.properties
/src/main/java/[namespace]/jaxb.properties
、私は私のJAXBContextののクラス名を取得しようとしたとき、私はまだ取得しようとしている
:
class com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl
を
私が手
-Djavax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory
::私が見た場合、私はのpom.xml
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
</build>
でこれを指定した両方のプロジェクトで
class org.eclipse.persistence.jaxb.JAXBContext
のJVMオプションを指定することで、私の実行の設定を変更しますJARでは、そこにjaxb.propertiesがあります。
今私は混乱しています。
Blaise、そのGitHubリンクに感謝します。フォルダの構造を熟読した後、実際には意味をなさないようになりました。私はjaxb.propertiesを正しいパッケージに入れました。 –
これは私にとっては役に立ちました。リファクタリングを行い、アプリケーションでモデルクラスを移動しましたが、jaxb.propertiesを移動するのを忘れてしまいました。パッケージ構造は、リソースツリーの下で正確に一致する必要があります。私のものは1つのパッケージで外され、すべてが壊れました。これは非常に重要なポイントです。 – Jon
ありがとうsooo。これも私の問題でした。これが私がstackoverflowが好きな理由です。だから、多くの偉大な人々があなたを助けるのが好きです! – atom88