为什么我不能开始log4j(新手)

时间:2011-10-16 06:52:47

标签: mongodb log4j morphia

我已经在eclipse win7 64bit的mongDb上运行morphia 在这里阅读log4mongo:
http://log4mongo.org/display/PUB/Log4mongo+for+Java
按照步骤进行操作:

log4j:ERROR Could not instantiate class [com.google.code.log4mongo.MongoDbAppender].
    java.lang.ClassNotFoundException: com.google.code.log4mongo.MongoDbAppender
        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.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at org.apache.log4j.helpers.Loader.loadClass(Loader.java:198)
        at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:326)
        at org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:123)
        at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:752)
        at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:735)
        at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:615)
        at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:502)
        at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:547)
        at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:483)
        at org.apache.log4j.LogManager.<clinit>(LogManager.java:127)
        at org.apache.log4j.Logger.getLogger(Logger.java:117)
        at LogTest.main(LogTest.java:6)
    log4j:ERROR Could not instantiate appender named "MongoDB".
    log4j:WARN No appenders could be found for logger (LogTest).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

我的eclipse bin文件夹中有log4j.properties(可能不对,但在其他地方没有响应)。

这个文件是importet:
log4mongo-Java的0.7.0.jar
log4j的-1.2.16.jar
mongo-2.6.5.jar

这是log4j.properties:

log4j.rootLogger=error, MongoDB
log4j.appender.MongoDB=com.google.code.log4mongo.MongoDbAppender
log4j.appender.MongoDB.databaseName=appname   
log4j.appender.MongoDB.collectionName=log

我也是一个正在等待连接的mongo shell

这是首发:

import org.apache.log4j.Logger;

public class LogTest {
    public static void main(String[] args) {
        Logger logger = Logger.getLogger(LogTest.class);
        logger.error("Don't panic");
    }
}

这是按预期工作的

log4j.rootLogger=error, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

1 个答案:

答案 0 :(得分:1)

尝试更改appender名称。

“com.google.code.log4mongo.MongoDbAppender” - &gt; “org.log4mongo.MongoDbAppender”。

log4mongo-java-0.7.0.jar使用了这个包。