2017-05-28 32 views
1

私は新しいSpring-boot 2.0.0.M1を試しています。 https://start.spring.io/を使用して、Webの依存関係を選択するだけでプロジェクトを初期化しました。スプリングブート2.0.0.M1エラー原因:java.lang.ClassNotFoundException:org.springframework.aop.framework.AopProxyUtils

私は日食で、この生成されたプロジェクトを開いて、その上でmvn clean installを実行している間、私は次のエラーを取得しています:

Exception in thread "main" java.lang.IllegalArgumentException: Cannot instantiate interface org.springframework.boot.SpringApplicationRunListener : org.springframework.boot.context.event.EventPublishingRunListener 
    at org.springframework.boot.SpringApplication.createSpringFactoriesInstances(SpringApplication.java:450) 
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:429) 
    at org.springframework.boot.SpringApplication.getRunListeners(SpringApplication.java:415) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1290) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1278) 
    at com.example.demo.DemoApplication.main(DemoApplication.java:12) 
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.context.event.EventPublishingRunListener]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/aop/framework/AopProxyUtils 
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:157) 
    at org.springframework.boot.SpringApplication.createSpringFactoriesInstances(SpringApplication.java:446) 
    ... 6 more 
Caused by: java.lang.NoClassDefFoundError: org/springframework/aop/framework/AopProxyUtils 
    at org.springframework.context.event.AbstractApplicationEventMulticaster.addApplicationListener(AbstractApplicationEventMulticaster.java:104) 
    at org.springframework.boot.context.event.EventPublishingRunListener.<init>(EventPublishingRunListener.java:55) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:145) 
    ... 7 more 
Caused by: java.lang.ClassNotFoundException: org.springframework.aop.framework.AopProxyUtils 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 

誰でも同様の問題に直面しましたか?助けてください。

+3

で別々のスプリングAOPを追加するなどのブート依存から私は疑問を除外し、このために周りに別の仕事を持っていますこれはアプリケーションを実行しているときの 'mvn clean install'の出力です。 'mvn clean install 'はそれをしません。あなたがポンを変更していない限り。ビルドを行う前に 'mvn dependency:purge-local-repository'を試して依存関係を整理し、それらを再ダウンロードさせてください。 –

+0

ええ、私はそれを行い、問題を解決しました。ありがとう! – OutOfMind

答えて

0

AutoProxyUtilsクラスは、org.springframework.aop.frameworkパッケージの代わりにorg.springframework.aop.framework.autoproxyパッケージで使用できます。 classpathに正しいバージョンのspring-aopライブラリがあることを確認してください。しかし、フレームワークのバグだと思われます。

私は

は春-AOP

<dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-security</artifactId> 
     <exclusions> 
      <exclusion> 
       <groupId>org.springframework</groupId> 
       <artifactId>spring-aop</artifactId> 
      </exclusion> 
     </exclusions> 
    </dependency> 

と新しいバージョン

<dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-aop</artifactId> 
     <version>5.0.1.RELEASE</version> 
    </dependency> 
関連する問題