【问题标题】:Tomcat: One or more listeners failed to startTomcat:一个或多个监听器启动失败
【发布时间】:2018-07-16 07:51:09
【问题描述】:

我有一个应用程序在我添加/升级​​了一些依赖项后没有启动。它记录一个错误说

SEVERE: One or more listeners failed to start. Full details will be found in the appropriate container log file

我看到了所有的日志文件,还有 catalina.、localhost.、application.*,但它们似乎都没有导致启动中断的堆栈跟踪。

这是tomcat8,java8。

我如何检查日志以及除了普通的 tomcat 文件夹之外,日志还可以放在哪里。

Catalina 日志:

Feb 06, 2018 3:07:32 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [
/user/name/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.]
Feb 06, 2018 3:07:32 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-nio-7060"]
Feb 06, 2018 3:07:32 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFO: Using a shared selector for servlet write/read
Feb 06, 2018 3:07:32 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-nio-9060"]
Feb 06, 2018 3:07:32 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFO: Using a shared selector for servlet write/read
Feb 06, 2018 3:07:32 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 556 ms
Feb 06, 2018 3:07:32 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service [Catalina]
Feb 06, 2018 3:07:32 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/8.5.23
Feb 06, 2018 3:07:32 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/application.war]
Feb 06, 2018 3:07:48 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:07 PM redis.clients.jedis.JedisSentinelPool initSentinels
INFO: Trying to find master from available Sentinels...
Feb 06, 2018 3:08:07 PM redis.clients.jedis.JedisSentinelPool initSentinels
INFO: Redis master running at 127.0.0.1:6379, starting Sentinel listeners...
Feb 06, 2018 3:08:07 PM redis.clients.jedis.JedisSentinelPool initPool
INFO: Created JedisPool to master at 127.0.0.1:6379
Hibernate: A complicated Hibernate query
Feb 06, 2018 3:08:25 PM com.sun.faces.config.ConfigureListener contextInitialized
INFO: Initializing Mojarra 2.2.7 ( 20140610-1547 https://svn.java.net/svn/mojarra~svn/tags/2.2.7@13362) for context '/application'
Feb 06, 2018 3:08:25 PM com.sun.faces.spi.InjectionProviderFactory createInstance
INFO: JSF1048: PostConstruct/PreDestroy annotations present.  ManagedBeans methods marked with these annotations will have said annotations processed.
Feb 06, 2018 3:08:26 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/application.war] has finished in [53,864] ms
Feb 06, 2018 3:08:26 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/docs]
Feb 06, 2018 3:08:26 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:26 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/docs] has finished in [386] ms
Feb 06, 2018 3:08:26 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/examples]
Feb 06, 2018 3:08:27 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/examples] has finished in [551] ms
Feb 06, 2018 3:08:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/host-manager]
Feb 06, 2018 3:08:27 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/host-manager] has finished in [363] ms
Feb 06, 2018 3:08:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/manager]
Feb 06, 2018 3:08:28 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:28 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/manager] has finished in [295] ms
Feb 06, 2018 3:08:28 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/ROOT]
Feb 06, 2018 3:08:28 PM org.apache.jasper.servlet.TldScanner scanJars
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Feb 06, 2018 3:08:28 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/usr/local/Cellar/tomcat/8.5.23/libexec/webapps/ROOT] has finished in [298] ms
Feb 06, 2018 3:08:28 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-nio-7060"]
Feb 06, 2018 3:08:28 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-nio-9060"]
Feb 06, 2018 3:08:28 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 55840 ms

【问题讨论】:

  • 你能检查你的日志文件吗?您能否与我们分享有关该错误的更多详细信息?

标签: java tomcat


【解决方案1】:

找到了一种识别问题的简单方法。

  1. 在应用程序的WEB-INF/classes 目录中,创建一个新文件:logging.properties

  2. 在该文件中添加以下内容:

org.apache.catalina.core.ContainerBase.[Catalina].level=INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers=java.util.logging.ConsoleHandler
  1. 重启tomcat。

现在您将获得完整的堆栈跟踪并从那里调试问题。

对于 Maven 构建

  1. 在模块的src/main/resources目录下新建logging.properties
  2. 将这些条目添加到该新文件中
org.apache.catalina.core.ContainerBase.[Catalina].level=INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers=java.util.logging.ConsoleHandler
  1. 运行mvn clean install
  2. 重启Tomcat

【讨论】:

  • 但是,您检查了哪个文件的堆栈跟踪? catalina.out?
  • @Sergei Siriik :Sandeep 要求我们定义一个 ConsoleHandler。堆栈跟踪因此显示在 Tomcat 控制台中。
【解决方案2】:

就我而言,我在 Tomcat_Home/logs 中的 localhost.log 文件中找到了日志。希望对你有所帮助。

【讨论】:

  • '我看到了所有的日志文件,还有 catalina.、localhost.、application.*,但它们似乎都没有导致启动中断的堆栈跟踪。'
【解决方案3】:

添加logging.properties 文件对我没有任何作用。而是在tomcat/logs/localhost.[YYYY-MM-DD].log 中找到了我的错误的堆栈跟踪。

【讨论】:

    【解决方案4】:

    这有助于找到错误日志文件实际错误

    sh bin/startup.sh ; tail -f logs/*.log;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-14
      • 2015-12-29
      • 1970-01-01
      • 2014-03-23
      • 2019-01-21
      • 2020-06-01
      相关资源
      最近更新 更多