この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:guest
更新日時:2018-04-27 16:03:12

タイトル: Error creating bean with name 'org.springframework.aop.config.internalAutoProxyCreator': Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator

この記事の要点
  • Spring AOP の internalAutoProxyCreator 初期化エラー (NoClassDefFoundError)
  • 原因: AspectJ 関連のクラスが見つからない(依存ライブラリ不足 / 競合)
  • 対処: aspectjweaver / aspectjrt を pom.xml に追加
  • Spring のバージョンとも整合させる

 

エラー内容

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.config.internalAutoProxyCreator': Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator

 

発生条件/原因

AOPの使用時に発生。

spring-aopライブラリのバージョンが合っていない。

 

対処法

AOPを実装する際に、参考となるサイト/参考書の記述を丸パクリしてspring-aopライブラリのバージョンだけ最新のもの(バージョン3.1以上)を導入した際に発生する。

spring-aopのバージョンは3.1以下で使用すること。

※上記、根本的な原因説明となっていないので情報求む。