Overbruggingsafhankelijkheden zijn tijdens runtime niet opgelost in eclipse wtp

Ik ondervind een probleem tijdens het uitvoeren van een dynamisch webproject in Eclipse. Ik heb een Maven-project (archtype - webapp) gemaakt en vervolgens DWP-gedrag erin toegevoegd door maven-eclipse-plugin toe te voegen (versie 2.9). De toegevoegde I-afhankelijkheden in het POM-bestand zijn als volgt


    4.0.0
    au.com.fairfaxdigital
    accessloganalyzer
    war
    1.0-SNAPSHOT
    accessloganalyzer Maven Webapp
    http://maven.apache.org  
    
        
            javax.servlet
            javax.servlet-api
            3.0.1
        
        
            net.sourceforge.wurfl
            wurfl
            1.4
        
        
            org.apache.poi
            poi
            3.8
        
        
            junit
            junit
            3.8.1
            test
        
    
    
        
            scientiamobile.public
            Scientia Mobile Public repository
            http://dev.scientiamobile.com/nexus/content/repositories/public-releases/
        
    
    
        accessloganalyzer

        
            
                maven-compiler-plugin
                
                    1.6
                    1.6
                
            
            
                org.apache.maven.plugins
                maven-eclipse-plugin
                2.9
                
                    accessloganalyzer-${project.version}
                    true
                    true
                    true
                    true
                    2.0
                    ${basedir}/src/main/resources/META-INF/MANIFEST.MF
                
            

        
    

Then I build the project using maven command (clean install). I could see the generated war file in target folder. When try run this application on tomcat within eclipse (project->right click->run one server) tomcat starts with an error.

SEVERE: Uitzondering voor het verzenden van een context geïnitialiseerde gebeurtenis naar de luisteraar   instantie van klasse   net.sourceforge.wurfl.core.web.WURFLServletContextListener   java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils     op   net.sourceforge.wurfl.core.web.WURFLServletContextListener.contextInitialized (WURFLServletContextListener.java:81)     op   org.apache.catalina.core.StandardContext.listenerStart (StandardContext.java:4765)     op   org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:5260)     op   org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:150)     op   org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:866)     op   org.apache.catalina.core.ContainerBase.addChild (ContainerBase.java:842)     op   org.apache.catalina.core.StandardHost.addChild (StandardHost.java:615)     op   org.apache.catalina.startup.HostConfig.deployDescriptor (HostConfig.java:649)     op   org.apache.catalina.startup.HostConfig $ DeployDescriptor.run (HostConfig.java:1581)     op   java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java:441)     bij java.util.concurrent.FutureTask $ Sync.innerRun (FutureTask.java:303)     op java.util.concurrent.FutureTask.run (FutureTask.java:138) op   java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (ThreadPoolExecutor.java:886)     op   java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908)     op java.lang.Thread.run (Thread.java:662) Veroorzaakt door:   java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils     op   org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1688)     op   org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1533)     ... 15 meer Beginnen met Introspector-initialisatie ...

Wanneer ik kijk in de Eclipse-map van waaruit tomcat de app uitvoert (C: \ Deepak \ Study \ Dev \ Practicals \ workspace.metadata.plugins \ org.eclipse.wst.server.core \ tmp0 \ wtpwebapps \ accessloganalyzer-1.0-SNAPSHOT ), Ik vond geen afhankelijkheden (inclusief commons-lang waarnaar wordt verwezen in de fout) voor de bibliotheek wurfl.1.4.jar van derden die ik in mijn project gebruik.

Wurfl-bibliotheek gebruikt de volgende afhankelijkheden die niet aanwezig zijn in WEB-INF/lib en vandaar het probleem veroorzaken

  • commons-collecties-3.2.1
  • commons-lang-2.6
  • jackson-core-asl-1.8.2
  • jackson-mapper-asl-1.8.2
  • logback-classic-0.9.28
  • logback-core-0.9.28
  • SLF4J-api-1.6.1

Kan iemand alstublieft aangeven wat ik mis waarom deze transitieve afhankelijkheden niet worden gekopieerd in de map WEB-INF/lib in het WAR-bestand van de toepassing?

0
Gebruikt u m2e? Zo ja, dan hebt u de eclipse-plugin niet nodig? Weet je zeker dat de versie 1.4 van de wurflibrar bestaat?
toegevoegd de auteur khmarbaise, de bron
Hallo Khmarbaise, bedankt voor het reageren op deze thread. Ik heb geprobeerd de eclipse-plug-in te verwijderen, maar het resultaat is hetzelfde. Ja, ik ben zeker van wurff 1.4. Ik heb deze bibliotheek gedownload van wurfl site en handmatig geïnstalleerd met de opdracht maven handmatig installeren.
toegevoegd de auteur user1477713, de bron

1 antwoord

Install m2e wtp plugin. This plugin can be installed from the Eclipse Marketplace (Help -> Eclipse Marketplace...). That should get you most of the way there. You should then see your dependencies where you are expecting.

1
toegevoegd