量産メモ帳

忘れっぽいのでメモを残しています。浅く適当に書きます。

EclipseLink の JAXBContextFactory クラスのロードが失敗する。

スポンサーリンク

Maven の pom.xml を以下のように記述して、、







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 リポジトリにあるファイルが壊れているのかもしれないけど、ちょっと意味不明。。


関連資料: