2012-10-04 12 views
13

セットアップ: EclipseのジュノR、Tomcatの7.0.8、TomcatはでEclipseプラグインを介して実行日食から Tomcatの起動設定がVMを持っています。引数 -Djava.util.logging.config.file = "C:¥WS¥Serverlogs¥tomcat7¥conf¥logging.properties" (Ref:Where can I view Tomcat log files in Eclipse?) 次のエラーが表示されます。エラー - ClassNotFoundExceptionが "1catalina.org.apache.juli.FileHandler"

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から来ていることを理解しています。 このjarをサーバークラスパス(Eclipse - >サーバー - >オープン - > Open Lauch設定 - >クラスパス - >ユーザーエントリ)に追加しましたが、同じエラーが発生しました。 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 

任意の入力/指導が最も高く評価されています。 これらを見つけました How to configure Tomcat JULI logging to roll log files? Local Tomcat Environment Not Starting しかし、私の問題は異なるようです。 logging.propertiesで

EDIT1 サーバーのVM引数に "-Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager" を追加し、変更し、 "\" を "/" は、トリックを行いました。 http://wiki.apache.org/tomcat/FAQ/Logging

それともあなたは、別のlogging.propertiesを使用することができます。よくある質問

ロギングのTomcatへのポインタのためのロビンへ おかげであなたは、この特定の質問については、FAQをチェックすることができ、 VJ

+0

サービスとしてTomcatがインストールされており、tomcat7w.exeを使用して[Java]タブの[Javaオプション]セクションで設定を変更すると、新しい行の前に '-Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager'の後の1つのスペースは私に同じ問題を与えました。 – vinnyjames

答えて

0

をありがとうたとえば、この1:

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 
+0

ConsoleAppenderの使用は私にとってはオプションではありません。私は後で参照できるファイルにログを書きたい。 tomcat – vjkumar

+0

のログFAQを見てください。ConsoleAppenderを必ずしも使用する必要はありません。これは単なるサンプルです。 Apache log4j http://logging.apache.org/log4j/1.2/manual.htmlのマニュアルです。たとえば、FileAppenderがあります。これにより、.logファイルにログが追加されます。このリンクを確認してください:http://veerasundar.com/blog/2009/07/log4j-tutorial-how-to-send-the-log-messages-to-a-file/ – Robin

16

、次のシステムプロパティが設定されていることを確認
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 

tomcatユーザーメーリングリストのhereと同様です。

tomcat起動スクリプトを使用するのではなく、YAJSWでtomcatを起動するのと同じ問題がありました。

関連する問題