2017-03-07 9 views
0

Ich erhalte den folgenden Fehler, wenn Vaadin 8 Push mit Spring Boot Version 1.5.1.RELEASE aktiviert wird.NoClassDefFoundError mit Vaadin 8 Push und Spring Boot Version 1.5.1

java.lang.NoClassDefFoundError: org/springframework/boot/context/embedded/ServletListenerRegistrationBean 
     at java.lang.Class.getDeclaredMethods0(Native Method) 
     at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 
     at java.lang.Class.getDeclaredMethods(Class.java:1975) 
     at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:613) 
     at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:524) 
     at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:510) 
     at org.springframework.util.ReflectionUtils.getUniqueDeclaredMethods(ReflectionUtils.java:570) 
     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryMethod(AbstractAutowireCapableBeanFactory.java:697) 
     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineTargetType(AbstractAutowireCapableBeanFactory.java:640) 
     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:609) 
     at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1484) 
     at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:425) 
     at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:395) 
     at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:96) 
     at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:686) 
     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:524) 
     at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) 
     at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:737) 
     at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:370) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1162) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1151) 
     at com.xxxx.yyy.Application.main(Application.java:37) 
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.embedded.ServletListenerRegistrationBean 
     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) 
     ... 23 common frames omitted 

Hier build.gradle ist

buildscript { 
    ext { 
     springBootVersion = '1.5.1.RELEASE' 
    } 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") 
    } 
} 

apply plugin: 'java' 
apply plugin: 'eclipse' 
apply plugin: 'org.springframework.boot' 

jar { 
    baseName = 'test' 
    version = '0.0.1-SNAPSHOT' 
} 

sourceCompatibility = 1.8 

repositories { 
    mavenCentral() 
} 


dependencies { 
    compile('org.springframework.boot:spring-boot-starter-jersey') 
    compile('org.springframework.boot:spring-boot-starter-web') 
    testCompile('org.springframework.boot:spring-boot-starter-test') 

    // Spring Boot Security 
    compile("org.springframework.boot:spring-boot-starter-security") 
    compile("org.springframework.security.oauth:spring-security-oauth2") 
    compile('org.springframework.security:spring-security-ldap') 

    // Spring Actuator 
    compile("org.springframework.boot:spring-boot-starter-actuator") 

    // Vaadin 
    compile('com.vaadin:vaadin-spring-boot-starter') 
    compile('com.vaadin:vaadin-push') 

    // Vaadin add-ons 
    compile("org.vaadin.spring.addons:vaadin-spring-addon-eventbus:0.0.7.RELEASE") 
    compile("org.vaadin.spring.addons:vaadin-spring-addon-mvp:0.0.7.RELEASE") 
    compile("org.vaadin.spring.addons:vaadin-spring-addon-i18n:0.0.7.RELEASE") 

    //Vaadin extentions - in the future more of those will go to official VaadinSpring Integration 
    compile("org.vaadin.spring.extensions:vaadin-spring-ext-security:0.0.7.RELEASE") 
    compile("org.vaadin.spring.extensions:vaadin-spring-ext-core:0.0.7.RELEASE") 
    compile("org.vaadin.spring.extensions:vaadin-spring-ext-boot:0.0.7.RELEASE") 
    compile("org.vaadin.spring.extensions:vaadin-spring-ext-test:0.0.7.RELEASE") 

    // lombok 
    compileOnly('org.projectlombok:lombok') 

} 

dependencyManagement { 
    imports { 
     mavenBom "com.vaadin:vaadin-bom:8.0.0" 
    } 
} 

Wenn ich kompilieren deaktivieren ('com.vaadin: Vaadin-Push'), kein Fehler vorhanden ist, aber Push funktioniert nicht. Wissen Sie, wie man mit Vaadin 8 und Spring Boot 5 funktioniert?

Antwort

0

Dieses Problem ist behoben, wenn ich auf Vaadin4Spring 2.0.0.RELEASE aktualisiere.

Kompilierung ("org.vaadin.spring.addons: Vaadin-Feder-Add-on-EventBus: 2.0.0.RELEASE") Kompilierung ("org.vaadin.spring.extensions: Vaadin-Feder-ext-Sicherheit: 2.0.0.RELEASE ")

0

Dies ist a known issue, bitte abonnieren Sie es für die Aktualisierung.

0

Diese Klasse ist seit Spring Boot 1.4 veraltet und wurde in Version 1.5 entfernt. Downgrade auf Spring Boot 1.4.5.RELEASE und warten, bis Vaadin die richtige Klasse verwendet.

Verwandte Themen