3

Spring 3.0.7(3.0.5から)を使用するようにMavenプロジェクトをアップグレードしました。さて、を使用するすべての私のjunitテスト

@RunWith(SpringJUnit4ClassRunner.class)

アノテーションは失敗します(以下の例外を除く)が、Eclipse内から実行している場合のみです。「EclipseIndigoServiceRelease2」を実行しています。Linuxコンソールから実行すると、すべてが通過します。

誰かが前にこれに出くわしますか?

java.lang.NoSuchMethodError: org.springframework.core.BridgeMethodResolver.isVisibilityBridgeMethodPair(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.buildAutowiringMetadata(AutowiredAnnotationBeanPostProcessor.java:346)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.findAutowiringMetadata(AutowiredAnnotationBeanPostProcessor.java:317)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(AutowiredAnnotationBeanPostProcessor.java:216)
at  
etc & so forth...
4

1 に答える 1

2

解決しました-そしてそれはクラスパスに3.0.5と3.0.7の両方のJARを持つことになりました。この質問から手がかりを得ました:Tomcat 7、Spring 3、Camel2.9.1でJarファイルをロード中にエラーが発生しました

EclipseがすべてのSpringjarファイルが3.0.7であると報告していたにもかかわらず、古いjar(3.0.5)への参照にぶら下がっていることを発見しました。これは、Mavenリポジトリから既存のSpringファイルをすべて削除して再構築することで見つかりました。次に、不足している$ M2_REPO / com / spring ..... /3.0.5jarファイルに関する明示的なメッセージを取得し始めました。

于 2012-05-21T13:59:36.630 に答える