• Tomcat报java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler


    最近在生产环境部署Tomcat的时候,在启动的时候,在控制台报“java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler”这样子类似的错误。

    原因

    这个极有可能是因为你修改了catalina.sh文件(比如,你想修改下JVM的参数等)。

    这个错误,会导致在Tomcat的logs目录下的localhost.yyyy-MM-dd这类的日志文件不会进行记录的了。

    解决办法

    正确的处理方式为: 在Tomcat的安装目录下的bin目录下,修改daemon.sh的文件,然后写入你想要修改的参数,比如我的如下:

    #!/bin/sh
    
    CATALINA_OPTS="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
    CLASSPATH=
    JAVA_OPTS=
    CATALINA_OPTS="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"

    说明:

    -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager:这个参数就是解决上面报的问题的 -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n: 这个参数是使用远程调试的

    还有一点要特别注意的是:它是使用CATALINA_OPTS参数,而不是JAVA_OPTS。不知道为什么,我在JAVA_OPTS里修改,一直没有生效。*_*

    这个问题困惑了我好久,今天终于认真看看Tomcat官方文档,才得以解决。

    更新

    2016-7-5

    经过学习,CATALINA_OPTS参数是针对Tomcat本身的, 而JAVA_OPTS则是控制我们的应用的.所以JAVA_OPTS里修改这参数,并没有传递到CATALINA_OPTS里.

    转自:https://emacsist.github.io/2015/08/28/Tomcat%E6%8A%A5java.lang.ClassNotFoundException-1catalina.org.apache.juli.FileHandler/

  • 相关阅读:
    属性选择器(通常用在input)
    函数调用的文档注释
    List集合操作
    数组排序三种方法
    字符串反序输出字符串
    js中完美运动框架
    查找100-200之间是否存在水仙花数
    提示用户输入一个正整数,如果错误,则重新输入,可以使用以下的代码来保证用户输入正确:
    Ubuntu 16.10下的 jdk 1.8.0_111
    方法内部类
  • 原文地址:https://www.cnblogs.com/vijayfly/p/6141797.html
Copyright © 2020-2023  润新知