java.lang.ClassNotFoundException: org.springframework.Bohnen.factory.- Zugang.BeanFactoryReference
Nach langer Suche und keine Antwort zu meinem Fall, bin ich hier.
Versuch zum bereitstellen einer "Struts 2 + Maven + Frühling" WAR ein Projekt in Wildfly 11, mit dem Eclipse-Sauerstoff - Standard für alle.
Der stack ist wie folgt:
15:04:27,325 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "MSDB.war" (runtime-name: "MSDB.war")
15:04:30,148 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."MSDB.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."MSDB.war".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of deployment "MSDB.war"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:172)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:2032)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1955)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class org.springframework.web.context.ContextLoader with ClassLoader ModuleClassLoader for Module "deployment.MSDB.war" from Service Module Loader
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:78)
at org.jboss.as.ee.metadata.MethodAnnotationAggregator.runtimeAnnotationInformation(MethodAnnotationAggregator.java:57)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.handleAnnotations(InterceptorAnnotationProcessor.java:106)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:91)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:76)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:165)
... 5 more
Caused by: java.lang.NoClassDefFoundError: Lorg/springframework/beans/factory/access/BeanFactoryReference;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Unknown Source)
at java.lang.Class.getDeclaredFields(Unknown Source)
at org.jboss.as.server.deployment.reflect.ClassReflectionIndex.<init>(ClassReflectionIndex.java:72)
at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)
... 10 more
Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.access.BeanFactoryReference from [Module "deployment.MSDB.war" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:198)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:412)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:400)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
... 15 more
15:04:30,150 ERROR [org.jboss.as.controller.management-operation] (External Management Request Threads -- 4) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "MSDB.war")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"MSDB.war\".POST_MODULE" => "WFLYSRV0153: Failed to process phase POST_MODULE of deployment \"MSDB.war\"
Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class org.springframework.web.context.ContextLoader with ClassLoader ModuleClassLoader for Module \"deployment.MSDB.war\" from Service Module Loader
Caused by: java.lang.NoClassDefFoundError: Lorg/springframework/beans/factory/access/BeanFactoryReference;
Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.access.BeanFactoryReference from [Module \"deployment.MSDB.war\" from Service Module Loader]"}}
15:04:30,151 ERROR [org.jboss.as.server] (External Management Request Threads -- 4) WFLYSRV0021: Deploy of deployment "MSDB.war" was rolled back with the following failure message:
{"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"MSDB.war\".POST_MODULE" => "WFLYSRV0153: Failed to process phase POST_MODULE of deployment \"MSDB.war\"
Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class org.springframework.web.context.ContextLoader with ClassLoader ModuleClassLoader for Module \"deployment.MSDB.war\" from Service Module Loader
Caused by: java.lang.NoClassDefFoundError: Lorg/springframework/beans/factory/access/BeanFactoryReference;
Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.access.BeanFactoryReference from [Module \"deployment.MSDB.war\" from Service Module Loader]"}}
15:04:30,268 INFO [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0028: Stopped deployment MSDB.war (runtime-name: MSDB.war) in 116ms
pom.xml ist derzeit wie folgt aus (nachdem Sie eine Menge zusätzliche Abhängigkeiten, die aus der versucht aus vorherigen Suchanfragen über das web):
<project xmlns="http://maven.apache.org/POM/4.0.0" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>SBMC</groupId>
<artifactId>MSDB</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>MSDB</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.34</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.16.2</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.0.0.RELEASE</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>5.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>5.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.6.3.Final</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.9</version>
</dependency>
</dependencies>
<build>
<finalName>MSDB</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>5.0</version>
</plugin>
<!-- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin> -->
</plugins>
</build>
</project>
Ich suchte eine Menge, aber nichts habe ich gefunden, die mein Problem gelöst.
Habe das gleiche Problem mit der Feder 5.0.0.Lösen Sie die Feder 4.3.11.RELEASE funktioniert perfekt. Ich habe einen bug-report in jira.Frühling.io/browse/SPR-16081
InformationsquelleAutor JokerPW | 2017-10-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie möglicherweise ein Problem mit der Frühjahr-core-Abhängigkeit hier. Es sei denn, Sie haben spring-core in der classpath-ich würde empfehlen, die änderung der Abhängigkeit Geltungsbereich auf Standard (oder Glas) anstelle der Laufzeit.
Sie können
<scope>runtime</scope>
von derspring-core
Abhängigkeit von Ihrempom.xml
- Datei und sehen, ob das hilft.Leider, es machte überhaupt keinen Unterschied. Aber ich danke Ihnen für Ihre Zeit.
InformationsquelleAutor Srikanth Anusuri
Hatte ich dieses Problem und ich habe versucht, bereitstellen von war-Datei für tomcat 8, in meinem Fall einer von der Bibliothek, die ich mit hatte eine Abhängigkeit zu spring-Kontext gebracht, in der version 4.3.3, in dieser version ist Klasse
Als Sie herausgefunden
BeanFactoryReference
existiert nicht in version 5.Ich sehen kann, haben Sie schon spring-Kontext version 5, nur überprüfen Sie Ihre Abhängigkeiten und stellen Sie sicher, es ist nur spring version 5 und keine andere.
wenn es irgendeine andere brachten in die von einigen anderen Bibliotheken könnte man ausschließen, indem Sie mit
Die sortiert mein problem und es fühlt Ihnen ist etwas ähnliches.
InformationsquelleAutor justMe
Ist es möglich, dass Sie einige Frühling-frame-works Bibliotheken
indirectly
zu Ihrem Projekt Hinzugefügt. So können Sie zum Beispielspring-tx-4.3.11.RELEASE
oderspring-context-support-4.3.11.RELEASE
oder ... in Ihrer letzten Klasse Weg.Es zu lösen, stellen Sie sicher, dass es keine Frühlings-Rahmen-Pakete mit der version weniger als
5.0.0
in Ihrer Klasse Weg.Einige der spring-framework-Gruppen, die version 5.0.0:
Ich benutzte eclipse-pom-viewer, können Sie sehen, welche Pakete beinhalten version der spring-framework durch die Verwendung von
Dependency Hierarchy
tab. Dann kann man Sie ausschließen.Beispielsweise für struts, die Sie tun müssen, unten:
Den
exclusion
werden kann, die für andere frameworks auchspring security
oderspring-ws
InformationsquelleAutor Alireza Fattahi
Dein problem ist hier
Du bist mit Feder 5, so sollten Sie aktualisieren Sie Ihre hibernate-version 5 zu, ich benutze hibernate
5.0.0.Final
.InformationsquelleAutor Se Song