webentwicklung-frage-antwort-db.com.de

Die Spring-Kontextinitialisierung ist bei der Implementierung auf Apache 7.0.54 und Java 8 mit Java.lang.IllegalArgumentException fehlgeschlagen

Umgebung: Anwendungsserver: Apache 7.0.54Java: "1.8.0_05" OS: Mac OS X 10.9.3

Bibliotheken: Spring 3.2 REST - Anwendung

Folgendes ist der Fehler, den ich während der Bereitstellung erhalten habe:

localhost.2014.06.09.log

Jun 09, 2014 3:37:47 PM org.Apache.catalina.core.ApplicationContext log
INFO: No Spring WebApplicationInitializer types detected on classpath
Jun 09, 2014 3:37:47 PM org.Apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
Jun 09, 2014 3:37:47 PM org.Apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener

Java.lang.IllegalArgumentException
    at org.springframework.asm.ClassReader.<init>(Unknown Source)
    at org.springframework.asm.ClassReader.<init>(Unknown Source)
    at org.springframework.asm.ClassReader.<init>(Unknown Source)
    at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.Java:52)
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.Java:80)
    at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.Java:101)
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.Java:76)
    at org.springframework.context.annotation.ConfigurationClassParser.getImports(ConfigurationClassParser.Java:298)
    at org.springframework.context.annotation.ConfigurationClassParser.getImports(ConfigurationClassParser.Java:300)
    at org.springframework.context.annotation.ConfigurationClassParser.getImports(ConfigurationClassParser.Java:300)
    at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.Java:230)
    at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.Java:153)
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.Java:130)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.Java:285)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.Java:223)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.Java:630)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.Java:461)
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.Java:383)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.Java:283)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.Java:112)
    at org.Apache.catalina.core.StandardContext.listenerStart(StandardContext.Java:4973)
    at org.Apache.catalina.core.StandardContext.startInternal(StandardContext.Java:5467)
    at org.Apache.catalina.util.LifecycleBase.start(LifecycleBase.Java:150)
    at org.Apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.Java:901)
    at org.Apache.catalina.core.ContainerBase.addChild(ContainerBase.Java:877)
    at org.Apache.catalina.core.StandardHost.addChild(StandardHost.Java:632)
    at org.Apache.catalina.startup.HostConfig.deployWAR(HostConfig.Java:1083)
    at org.Apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.Java:1880)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Executors.Java:511)
    at Java.util.concurrent.FutureTask.run(FutureTask.Java:266)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
    at Java.lang.Thread.run(Thread.Java:745)
40
user827096

Sie müssen auf Spring 4 Release aufrüsten, um das Java 1.8-Bytecode-Format zu unterstützen 

68
Jigar Joshi

Wenn Sie nicht Spring 4 besuchen können, ist ein Upgrade auf 3.2.16 das Problem gelöst.

Dank an Tom Saleeba

19
Aalkhodiry

In meinem Fall läuft meine Anwendung mit Java8 und Jetty, verwendet Spring 3.1.4 und kann nicht aktualisiert werden.

Das Problem trat nach der Verwendung einer Lambda-Funktion in einer Bean-Definition auf. Das Entfernen löste mein Problem.

0
riccardo.tasso

Ein Upgrade auf Spring 3.2.16 hat das Problem behoben. Sieht aus wie ältere Version von Spring mag Java 1.8.xxx nicht

0
Parik Chudasma