2012-06-01 39 views
11

Sto provando a creare un progetto di test ibrido usando spring + hibernate. Dopo la distribuzione ... mi sto frustrato con questo errore .. e cercato in google ma ancora non farlo funzionare ...Errore "java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger"

Caused by: java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object; 
at org.hibernate.annotations.common.util.impl.LoggerFactory.make(LoggerFactory.java:34) 
at org.hibernate.annotations.common.Version.<clinit>(Version.java:34) 
at org.hibernate.annotations.common.reflection.java.JavaReflectionManager.<clinit>(JavaReflectionManager.java:73) 
at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:311) 
at org.hibernate.cfg.Configuration.<init>(Configuration.java:216) 
at org.hibernate.cfg.Configuration.<init>(Configuration.java:220) 
at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:168) 

Cercando jboss-logger 3.1.0.CR2, così come una varietà di diversi jboss-logging, diverse versioni.

Come risolverlo?

seguito è immagine allegata per avere uno sguardo se eventuali convergenze di versione sono presenti o eventuali dipendenze mancanti ... Library structure for project

+0

https://community.jboss.org/message/604269 –

+0

Grazie @KazekageGaara, ma stanno usando l'ombra di Maven e io non voglio andare a fare il setup per Maven e anche io non userò Maven, ho passato attraverso questo soluzione pure ma ... non utile .. se riesci a farmi sapere qualche idea in più che sarebbe grande ... :) Grazie mille –

risposta

3

E 'una versione non corretta di JBoss vaso registrazione sul classpath cliente? Se si dispone della versione finale di JBoss 7.1.0, rimuovere tutti i file JAR dal classpath e aggiungere solo un file JAR client (jboss-client-7.1.0.Final.jar) che si trova in AS7_HOME/bin/client.

Per ulteriori informazioni, vedere this.

+0

Sto usando Tomcat non jboss. pensi che questo sarà ancora d'aiuto? –

+0

Dovrebbe. Se non vuoi rischiare, allora crea un nuovo progetto per essere alla fine più sicura. –

+0

Controlla il tuo percorso di classe. Deve essere caricata una versione diversa di JBoss Logging. –

8

L'ho risolto rimuovendo jboss-common-client-3.2.3.jar.

+1

ha avuto lo stesso problema con "jboss-common-core" "2.2.17.GA" aggiunta esclusione per "org.jboss.logging" "jboss-logging-spi" – javatestcase

6

Ha avuto lo stesso problema con org.jboss.logging-3.1.0.GA necessario per Springframework 4.1.3 Final.

La soluzione per me era escludere org.jboss.logging proveniente da Hibernate e aggiungere org.jboss.logging-3.2.0.Final al mio progetto nel pom.xml. Come specificare here org.jboss.logging-3.1.0.GA (e CR2) ha un guasto nel rilevamento LoggerProviders ed è fissato in 3.2.0 finale Voir le Github de Jboss Logging

0

Ho affrontato lo stesso problema. Ho rimosso le librerie glassfish da buildpath e risolto il problema.