EclipseLink の JAXBContextFactory クラスのロードが失敗する。
スポンサーリンク
…
…
org.eclipse.persistence
eclipselink
2.4.1
commonj.sdo
commonj.sdo
org.eclipse.persistence
javax.persistence
2.0.4.v201112161009
…
…
JAXB を利用したコードを書き、実際に動かしてみると、以下のようなエラーが発生する。
java.lang.ClassNotFoundException: org.eclipse.persistence.jaxb.JAXBContextFactory
しかし JAR ファイルの中を覗いてみると、JAXBContextFactory クラスは存在している。
そこで、EclipseLink のサイトから以下のファイルをダウンロードして、、
- eclipselink-2.4.1.v20121003-ad44345.zip
中に入っている eclipselink.jar ファイルを取り出して、それに dependency を変更したら、問題は解消した。
同じバージョンのはずなのにファイルサイズが違っていたりして、もしかしたら Maven リポジトリにあるファイルが壊れているのかもしれないけど、ちょっと意味不明。。
関連資料:
- Eclipse Community Forums: EclipseLink » JAXBContextFactory Not Found
- Where to include jaxb.properties file? - Stack Overflow