2013-07-22 10 views
12

sto ottenendo il seguente errore di , durante l'esecuzione il mio codice seguente:java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils da BaseClassLoader

java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils from BaseClassLoader 

at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:448) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
at org.dozer.util.ResourceLoader.getResource(ResourceLoader.java:53) 
at org.dozer.util.DefaultClassLoader.loadResource(DefaultClassLoader.java:44) 
at org.dozer.config.GlobalSettings.loadGlobalSettings(GlobalSettings.java:116) 
at org.dozer.config.GlobalSettings.<init>(GlobalSettings.java:67) 
at org.dozer.config.GlobalSettings.<clinit>(GlobalSettings.java:46) 
at org.dozer.stats.StatisticsManagerImpl.<init>(StatisticsManagerImpl.java:39) 
at org.dozer.stats.GlobalStatistics.<init>(GlobalStatistics.java:29) 
at org.dozer.stats.GlobalStatistics.<clinit>(GlobalStatistics.java:24) 
at org.dozer.DozerBeanMapper.<clinit>(DozerBeanMapper.java:59) 

Gentilmente, mi guida per risolvere i problemi .

risposta

1

includono commons-lang-<version>.jar nel classpath

+0

Ciao, ho aggiunto i barattoli Commons-lang3-3.1 e Dozer al percorso della classe. Ma sto ancora ricevendo eccezione: 15: 22: 52,730 SEVERE [ContainerResponse] L'eccezione contenuta all'interno di MappableContainerException non può essere mappata a una risposta, re-lancio nel contenitore HTTP java.lang.NoClassDefFoundError: Impossibile inizializzare la classe org .dozer.DozerBeanMapper \t a com.ingenico.atlas.b2b.helper.DozerHelper.map (DozerHelper.java:13) –

+0

@AmitKumar Sembra che manchi qualcosa nel classpath. Sembra che manchi una dipendenza di com.ingenico.atlas.b2b.helper.DozerHelper.map, classe org.dozer.DozerBeanMapper – mel3kings

3

Aggiungere il vaso commons-lang sia in WEB-INF/lib o il server/lib

11

ho ricevuto lo stesso errore, ho aggiunto al mio pom.xml le seguenti righe e funzionava bene dopo l'installazione Maven:

<dependencies> 

     <!-- commons lang dependency --> 
     <dependency> 
      <groupId>commons-lang</groupId> 
      <artifactId>commons-lang</artifactId> 
      <version>2.6</version> 
     </dependency> 

</dependencies> 
+0

Nella mia situazione, il mio pom.xml ha già la dipendenza 'commons-lang', ma il server tomcat in Eclipse ancora non riesce a iniziare. Ho controllato la "directory lib del server tomcat" e non ho trovato nessun barattolo "dozer' lì. Quindi copio un jar 'dozer' dalla directory' .m2' lì, e il problema è risolto. – Hong

+0

per uso sbt: libraryDependencies + = "org.apache.commons"% "commons-lang3"% "3.4" – Avision

9

Nel caso in cui si utilizza Maven e Ubuntu 14.04:

Ciò può essere causato dalla versione Maven DOTAZIONE i n Ubuntu 14.04 e la soluzione alternativa è scaricare il tarball maven da http://maven.apache.org/download.cgi e utilizzare quella versione invece della versione predefinita fornita dalla distribuzione.

Maggiori informazioni: https://github.com/airbnb/chronos/issues/211

EDIT: È inoltre possibile aggiungere un link simbolico a commons-lang.jar per evitare di dover fare un'installazione personalizzata (Source e @Shoham nei commenti)

cd /usr/share/maven/lib 
sudo ln -s ../../java/commons-lang.jar . 

Verificare che i percorsi siano corretti sul sistema prima di tentare. Dovrebbero funzionare per Ubuntu 14.04 OOTB, ma sempre verificare.

+2

Grazie! Può anche essere corretto da 'cd/usr/share/maven/lib sudo ln -s ../../java/commons-lang.jar.' – Shoham

1

Ho affrontato lo stesso problema nella versione più recente di IntelliJ Community Edition (idea-IC-13.224.1 o versione 14) insieme a apache-maven 3.2.3.

L'aggiunta del vaso mancante (commons-lang-2.6.jar) nella cartella $IDEA_HOME/plugins/maven/lib/maven3 sembra risolvere il problema.

Problemi correlati