- Per quanto riguarda Eclipse IDE ( Indigo , Juno e Kepler (versioni a 32 e 64 bit))
- Piattaforme : Windows , Ubuntu , Mac
- versione m2e : 1.1.0.20120530-0009 , 1.2.0.20120903-1050 , 1.3.0.20130129-0926 ,
1.4.0.20130601-0317
Informazioni generali
L'errore di cui sopra si è verificato dopo l'aggiornamento di m2e alla versione 1.1. Rimuovendo m2e 1.1 e tornando a m2e 1.0 tutto ha funzionato bene. Ho provato a ripetere il problema in Windows e Ubuntu e mi ha dato lo stesso identico errore. Sono state testate numerose configurazioni di slf4j-api e logback ma nessuna sembra funzionare.
L'errore appare in qualsiasi progetto maven anche senza dichiarare la dipendenza slf4j .
Nuovo progetto Maven -> maven-archetype-quickstart
e
Nuovo progetto Maven -> Progetto semplice senza selezione di archetipi
risultato a
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
Test di ambienti e configurazioni
Testato con Eclipse Indigo ed Eclipse Juno (32 e 64 bit entrambi) su Mac, 32 bit su Ubuntu e 64 e 32 bit su Windows. Sono state testate nuove installazioni di Juno Classic , Juno Modeling tools , Kepler Standard , Kepler Modeling Tools e ha prodotto lo stesso errore.
L'errore viene visualizzato con clean , install , test , deploy , generate-sources , validate , compile , package , integration-test , verifica e combinazioni dell'obiettivo clean con gli altri obiettivi. Appare anche con i parametri -e e -X . C'è stato un tentativo di eliminare il repository m2e e scaricarlo da zero, ma di nuovo senza successo. Dovrei menzionare che è stato testato in 3 macchine diverse e nella scatola virtuale tutti i sistemi di cui sopra, ma ha prodotto lo stesso errore.
Ho provato tutte le diverse configurazioni di logback (da 1.0.4 a 1.0.13) che risolvono le dipendenze slf4j-api e logback-core , ma producono tutte lo stesso errore:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version></version>
</dependency>
Ho provato tutte le diverse configurazioni (da 1.6.1 a 1.7.5) slf4j-simple .
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
Ho provato tutte le diverse configurazioni (da 1.6.1 a 1.7.5) log4j-over-slf4j .
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
Ho provato tutte le diverse configurazioni (da 1.6.1 a 1.7.5) slf4j-jdk14 .
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
Ho provato tutte le diverse configurazioni (da 1.6.1 a 1.7.5) slf4j-log4j12 .
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
Ho provato la configurazione slf4j-nop 1.7.5 .
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.5</version>
<scope>compile</scope>
</dependency>
Ultimo ma non meno importante, i log vengono salvati e stampati nonostante l'errore.
Modi per riprodurre l'errore
Scarica Eclipse Juno, Indigo o Kepler a 32 o 64 bit (tutte le installazioni causeranno lo stesso errore).
Installa m2e - integrazione Maven per Eclipse
- Juno - http://download.eclipse.org/releases/juno
- Kepler - http://download.eclipse.org/releases/kepler
- Indigo - http://download.eclipse.org/technology/m2e/releases/ ( attualmente non disponibile )
O
Aggiorna la tua versione m2e a 1.1.0.20120530-0009 , o 1.2.0.20120903-1050 , o 1.3.0.20130129-0926 o 1.4.0.20130601-0317 )
Seleziona File-> Nuovo-> Altro-> Progetto Maven-> Fai clic su Avanti-> Seleziona
maven-archetype-quickstart dal catalogo-> FineO
Seleziona File-> Nuovo-> Altro-> Progetto Maven-> Fai clic su Avanti-> Seleziona Crea un progetto semplice (salta la selezione dell'archetipo) -> Completa le informazioni sull'artefatto-> Fine
- Fare clic con il pulsante destro del mouse sul progetto-> Esegui come-> installazione pulita (o qualsiasi altro obiettivo menzionato sopra)
La prima riga sulla console sarà
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
I progetti esistenti PS produrranno lo stesso errore dopo l'aggiornamento della versione m2e a 1.1.0.20120530-0009 , 1.2.0.20120903-1050 , 1.3.0.20130129-0926 , 1.4.0.20130601-0317
aggiornamenti
MODIFICARE
Sito di supporto m2e:
La domanda sopra è stata pubblicata come bug nel sito di supporto m2e e la risposta di Igor Fedorenko è stata questa
Non ci sono piani immediati per sopprimere questo messaggio.
Per visualizzare il bug di cui sopra, fare riferimento al sito di supporto ufficiale di m2e
MODIFICA 2
- L'indicazione di errore sopra è presente anche M2E versione 1.2.0.20120903-1050
MODIFICA 3
- L'indicazione di errore sopra è presente anche M2E versione 1.3.0.20130129-0926
MODIFICA 4
- L'indicazione di errore sopra è presente anche M2E versione 1.4.0.20130601-0317
MODIFICA 5
***Reported FIXED***
- L'errore di cui sopra viene segnalato come corretto per m2e versione 1.5.0 / Luna M3 ( Target Milestone ). La versione non è ancora disponibile per il download.
- Luna M3 è prevista per il 15 novembre .
- L'ultima build di sviluppo è disponibile qui
- Maggiori informazioni sulle pietre miliari di m2e si possono trovare nel repository principale di m2e .
slf4j
in entrambi slf4j-api-1.7.7
e jcl-over-slf4j-1.7.7
se provo a rimuovere qualcuno di essi ricevo un messaggio di errore che dice che la loro Logger
classe è mancante. Cosa dovrei fare?