vjk*_*mar 14 java eclipse logging tomcat classnotfoundexception
设置: 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日志文件?)获取以下错误.
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"
Run Code Online (Sandbox Code Playgroud)
"1catalina.org.apache.juli.FileHandler","2localhost.org.apache.juli.FileHandler"和其他人也有类似的错误.我知道这些类来自/ bin的tomcat-juli.jar.我将这个jar添加到服务器类路径中(Eclipse - > Servers - > Open - > Open Lauch配置 - > Classpath - > User Entries),但是得到了同样的错误.logging.properties的内容是:
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
Run Code Online (Sandbox Code Playgroud)
任何输入/指导都非常感谢.找到这些 如何配置Tomcat JULI日志记录滚动日志文件? 本地Tomcat环境 无法启动,但我的问题似乎有所不同.
Edit1 将"-Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager"添加到服务器的VM Argument并在logging.properties中将"\"更改为"/"就可以了.感谢Robin指向Tomcat Logging FAQ的指针
谢谢你,VJ
Joh*_*thy 18
确保设置了以下系统属性,
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
Run Code Online (Sandbox Code Playgroud)
正如这里在tomcat用户邮件列表中看到的那样.
我在使用YAJSW而不是使用tomcat启动脚本启动tomcat时遇到了同样的问题.
您可以查看常见问题解答,了解有关日志记录不起作用的问题: https ://cwiki.apache.org/confluence/display/TOMCAT/Logging
或者您可以使用另一个logging.properties,例如这个:
log4j.rootLogger=DEBUG, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
# Print the date in ISO 8601 format
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22003 次 |
| 最近记录: |