Eclipse-Tomcat设置错误-ClassNotFoundException"1catalina.org.apache.juli.FileHandler" [英] Error in Eclipse-Tomcat Setup - ClassNotFoundException "1catalina.org.apache.juli.FileHandler"

查看:130
本文介绍了Eclipse-Tomcat设置错误-ClassNotFoundException"1catalina.org.apache.juli.FileHandler"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

设置:Eclipse Juno R,Tomcat 7.0.8,tomcat通过eclipse插件运行. eclipse中的Tomcat启动配置具有VM参数 -Djava.util.logging.config.file ="C:\ WS \ Serverlogs \ tomcat7 \ conf \ logging.properties" (请参阅:在哪里可以在Eclipse中查看Tomcat日志文件?) 出现以下错误.

Setup: Eclipse Juno R, Tomcat 7.0.8, tomcat run through eclipse plug in. Tomcat launch configuration from eclipse has VM argument -Djava.util.logging.config.file="C:\WS\Serverlogs\tomcat7\conf\logging.properties" (Ref: Where can I view Tomcat log files in Eclipse?) Getting following error.

Can't load log handler "1catalina.org.apache.juli.FileHandler"
java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler
java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.util.logging.LogManager$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.loadLoggerHandlers(Unknown Source)
    at java.util.logging.LogManager.addLogger(Unknown Source)
    at java.util.logging.LogManager$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.<clinit>(Unknown Source)
    at java.util.logging.Logger.getLogger(Unknown Source)
    at org.apache.juli.logging.DirectJDKLog.<init>(DirectJDKLog.java:71)
    at org.apache.juli.logging.DirectJDKLog.getInstance(DirectJDKLog.java:196)
    at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:170)
    at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:242)
    at org.apache.juli.logging.LogFactory.getLog(LogFactory.java:293)
    at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:57)
Can't load log handler "1catalina.org.apache.juli.FileHandler"

"1catalina.org.apache.juli.FileHandler","2localhost.org.apache.juli.FileHandler"等存在类似的错误. 我知道这些类来自/bin的tomcat-juli.jar. 我将此罐子添加到服务器类路径中(Eclipse->服务器->打开->打开Lauch配置->类路径->用户条目),但是遇到了相同的错误. logging.properties的内容是:

There are similar errors for "1catalina.org.apache.juli.FileHandler","2localhost.org.apache.juli.FileHandler" and others. I understand that these classes come from tomcat-juli.jar at /bin. I added this jar into server classpath (Eclipse -> Servers -> Open -> Open Lauch configuration -> Classpath -> User Entries), but got the same error. Contents of logging.properties are:

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = C:\WS\Serverlogs\tomcat7/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = C:\WS\Serverlogs\tomcat7/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.

3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = C:\WS\Serverlogs\tomcat7/logs
3manager.org.apache.juli.FileHandler.prefix = manager.

4host-manager.org.apache.juli.FileHandler.level = FINE
4host-manager.org.apache.juli.FileHandler.directory = C:\WS\Serverlogs\tomcat7/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.

java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler

任何输入/指导都非常感谢. 找到了这些 如何配置Tomcat JULI日志记录来滚动日志文件? /a> 本地Tomcat环境未启动 ,但我的问题似乎有所不同.

Any input / guidance is most appreciated. Found these How to configure Tomcat JULI logging to roll log files? Local Tomcat Environment Not Starting , but my issue seems to be different.

编辑1 在服务器的VM参数中添加"-Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager",并在logging.properties中将"\"更改为"/"就可以了. 感谢Robin提供的指向Tomcat日志记录常见问题解答的指针

Edit1 Adding "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" to server's VM Argument and changing "\" to "/" in the logging.properties did the trick. Thanks to Robin for the pointer to Tomcat Logging FAQ

谢谢你, VJ

推荐答案

确保设置了以下系统属性,

Ensure the following system property is set,

-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager

As seen here on the tomcat users mailing list.

在使用 YAJSW 而不是使用tomcat启动脚本来启动tomcat时,我遇到了同样的问题.

I had the same problem launching tomcat with YAJSW instead of using the tomcat startup scripts.

这篇关于Eclipse-Tomcat设置错误-ClassNotFoundException"1catalina.org.apache.juli.FileHandler"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆