0

私のプロジェクトでは、パッケージの使用が春のバンドルと競合しています。このリンクで提供されている手法を使用しました

http://njbartlett.name/2011/09/02/uses-constraints.html

これに対してパッケージ使用の競合が発生しています:

initial@reference:file:../../../my_project_maven/my_project/myproject-core/ [2158]
  Package uses conflict: Import-Package:org.springframework.orm.jpa.vendor; version="2.5.6"

org.springframework.orm.jpa.vendor; をエクスポートするバンドルを探しました。version="2.5.6" そしてこれを見つけました:

osgi> p org.springframework.orm.jpa.vendor
org.springframework.orm.jpa.vendor; version="2.5.6"<org.springframework_2.5.6 [2201]>
osgi>

それで、私はspringframework jarを開き、エクスポートされたパッケージの使用法を見て、これらを見つけました

javax.persistence,
javax.persistence.spi,
oracle.toplink.essentials.sessions,
org.apache.openjpa.persistence,
org.eclipse.persistence.sessions,
org.hibernate,
org.springframework.dao,
org.springframework.jdbc.datasource,
org.springframework.orm.jpa,
org.springframework.transaction

上記のうち、私のコアバンドルがインポートしているのは次のものだけです

javax.persistence;version="1.0.0"
org.springframework.dao;version="2.5.6"
org.springframework.orm.jpa;version="2.5.6"

Springframework は 1.0.0 の javax.persistence バージョンをインポートしており、コア バンドルも 1.0.0 をインポートしているため、バージョンの競合はありません。また、これらのインポート

org.springframework.dao;version="2.5.6"

org.springframework.orm.jpa;version="2.5.6"

springframework バンドルからのエクスポートであるため、バージョンの競合もありません。

org.springframework.orm.jpa.vendor パッケージの使用とコア バンドルのインポートにバージョンの競合はありません。このパッケージが競合を使用している原因がわかりません。これらをデバッグする簡単な方法はありますか?

4

0 に答える 0