代码之家  ›  专栏  ›  技术社区  ›  diyoda_

将Appfuse Spring MVC项目从STS直接部署到Tomcat-错误

  •  1
  • diyoda_  · 技术社区  · 11 年前

    我正在尝试使用STS将我的项目部署到Tomcat。我的项目正在构建(安装),但当我尝试运行tomcat时,它不起作用。

    我遇到了这个错误。

    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.
    [INFO] Scanning for projects...
    [WARNING] 
    [WARNING] Some problems were encountered while building the effective model for com:endovantage-web:war:0.0.1-SNAPSHOT
    [WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for org.springmodules:spring-modules-validation:jar with value '*' does not match a valid id pattern. @ line 214, column 33
    [WARNING] 
    [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
    [WARNING] 
    [WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
    [WARNING] 
    [INFO] ------------------------------------------------------------------------
    [INFO] Reactor Build Order:
    [INFO] 
    [INFO] AppFuse Modular Application
    [INFO] AppFuse Modular Application - Core
    [INFO] AppFuse Modular Application - Web (Spring MVC)
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building AppFuse Modular Application 0.0.1-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] >>> tomcat-maven-plugin:1.1:run (default-cli) @ endovantage >>>
    [INFO] 
    [INFO] <<< tomcat-maven-plugin:1.1:run (default-cli) @ endovantage <<<
    [INFO] 
    [INFO] --- tomcat-maven-plugin:1.1:run (default-cli) @ endovantage ---
    [INFO] Skipping non-war project
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building AppFuse Modular Application - Core 0.0.1-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] >>> tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-core >>>
    [WARNING] The POM for org.aspectj:aspectjweaver:jar:1.8.0.M1 is missing, no dependency information available
    [INFO] 
    [INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ endovantage-core ---
    [debug] execute contextualize
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 6 resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ endovantage-core ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 3 source files to C:\Development\Dev\endovantage\core\target\classes
    [INFO] 
    [INFO] <<< tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-core <<<
    [INFO] 
    [INFO] --- tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-core ---
    [INFO] Skipping non-war project
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building AppFuse Modular Application - Web (Spring MVC) 0.0.1-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] >>> tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-web >>>
    [INFO] 
    [INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ endovantage-web ---
    [debug] execute contextualize
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 44 resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ endovantage-web ---
    [INFO] Nothing to compile - all classes are up to date
    [INFO] 
    [INFO] <<< tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-web <<<
    [INFO] 
    [INFO] --- tomcat-maven-plugin:1.1:run (default-cli) @ endovantage-web ---
    [INFO] Running war on http://localhost:8080/endovantage-web
    [INFO] Creating Tomcat server configuration at C:\Development\Dev\endovantage\web\target\tomcat
    Feb 26, 2014 10:50:40 AM org.apache.catalina.startup.Embedded start
    INFO: Starting tomcat server
    Feb 26, 2014 10:50:41 AM org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Error configuring application listener of class com.webapp.listener.StartupListener
    java.lang.ClassNotFoundException: com.webapp.listener.StartupListener
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4078)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:255)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
    
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Error configuring application listener of class com.webapp.listener.UserCounterListener
    java.lang.ClassNotFoundException: com.webapp.listener.UserCounterListener
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4078)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:255)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
    
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Error configuring application listener of class com.webapp.jsp.EscapeXmlELResolverListener
    java.lang.ClassNotFoundException: com.webapp.jsp.EscapeXmlELResolverListener
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4078)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:255)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
    
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Skipped installing application listeners due to previous error(s)
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext start
    SEVERE: Error listenerStart
    Feb 26, 2014 10:50:42 AM org.apache.catalina.core.StandardContext start
    SEVERE: Context [/endovantage-web] startup failed due to previous errors
    Feb 26, 2014 10:50:42 AM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
    SEVERE: The web application [/endovantage-web] registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
    Feb 26, 2014 10:50:42 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
    SEVERE: The web application [/endovantage-web] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.
    [INFO] ------------------------------------------------------------------------
    [INFO] Reactor Summary:
    [INFO] 
    [INFO] AppFuse Modular Application ....................... SUCCESS [0.703s]
    [INFO] AppFuse Modular Application - Core ................ SUCCESS [3.460s]
    [INFO] AppFuse Modular Application - Web (Spring MVC) .... FAILURE [3.038s]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 8.220s
    [INFO] Finished at: Wed Feb 26 10:50:42 IST 2014
    [INFO] Final Memory: 32M/309M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:run (default-cli) on project endovantage-web: Could not start Tomcat: Protocol handler initialization failed: java.net.BindException: Address already in use: JVM_Bind <null>:8080 -> [Help 1]
    [ERROR] 
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR] 
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
    [ERROR] 
    [ERROR] After correcting the problems, you can resume the build with the command
    [ERROR]   mvn <goals> -rf :endovantage-web
    

    我正在使用maven tomcat插件运行项目。我在父pom中添加了以下插件。

               <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>tomcat-maven-plugin</artifactId>
                    <version>1.1</version>
                    <configuration>
                    <path>${contextpath-name}</path>
                    </configuration>
            </plugin>
    

    我已经将Maven Build配置为,

    • 干净安装-DskipTests
    • tomcat:运行

    我首先安装(工作正常) 但当我运行tomcat时:会出现上述错误。我试图手动部署战争文件。但这也不起作用。有人能在这件事上帮我吗?

    编辑:

    我试着手动运行它。我发现8080端口已经在使用中。所以我改变了端口,现在我得到了这个错误。

        Feb 26, 2014 11:36:43 AM org.apache.catalina.core.StandardContext start
    SEVERE: Error listenerStart
    

    错误listenerStart现已消失。感谢马特。我又犯了一个错误

    我为我遇到的错误创建了另一个问题 here

    1 回复  |  直到 7 年前
        1
  •  3
  •   Matt Raible    11 年前

    您需要在核心项目上运行“mvn install”,然后从web目录中运行“jetty:run”(或“tomcat7:run”)。我建议使用最新版本的Tomcat插件:

    http://tomcat.apache.org/maven-plugin-2.0/tomcat7-maven-plugin/