log4j无法使用我的log4j.properties初始化 [英] log4j can't initialize with my log4j.properties

查看:305
本文介绍了log4j无法使用我的log4j.properties初始化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个简单的log4j.property文件和一个使用log4j的简单程序.但是当我运行我的罐子时,我只会看到

I have a simple log4j.property file and a simple program that use log4j. But when I run my jar I see only this

log4j:WARN No appenders could be found for logger (package com.mycompany.hellolog4j).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

这是我使用记录器的方式:

Here is how I use logger:

package com.mycompany.hellolog4j;

import java.io.File;
import java.io.IOException;
import org.apache.log4j.*;

public class SimpleLogging
{

    public static void main(String args[]) throws IOException {

        Logger logger = Logger.getLogger(SimpleLogging.class.getPackage().toString());
       // SimpleLogging demo = new SimpleLogging(rbName);
        //demo.doLogging(name);
        logger.info("printing the message...");
    }
}

这是我pom.xml的一部分

And this is part of my pom.xml

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.3.1</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathLayoutType>custom</classpathLayoutType>
                            <mainClass>com.mycompany.hellolog4j.SimpleLogging</mainClass>
                            <customClasspathLayout>../lib/log4j.jar ../log4j.properties</customClasspathLayout>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>

这是我的log4j.properties

And here is my log4j.properties

log4j.rootLogger = DEBUG, testAppender

log4j.logger.com.mycompany.hellolog4j=DEBUG, testAppender

log4j.appender.testAppender=org.apache.log4j.ConsoleAppender

log4j.appender.testAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.testAppender.layout.conversionPattern=%p-%m%n

现在从我的项目目录中运行jar文件.这是我的项目目录

Now from my project directory I run jar file. This is my project directory

drwxr-xr-x 5 proger users 4096 2010-10-15 22:59 ./
drwxr-xr-x 3 proger users 4096 2010-10-15 22:27 ../
drwxr-xr-x 2 proger users 4096 2010-10-14 22:54 lib/
-rw-r--r-- 1 proger users  291 2010-10-15 23:00 log4j.properties
-rw-r--r-- 1 proger users 1689 2010-10-15 22:59 nbactions.xml
-rw-r--r-- 1 proger users 1987 2010-10-15 22:56 pom.xml
drwxr-xr-x 4 proger users 4096 2010-10-13 23:01 src/
drwxr-xr-x 6 proger users 4096 2010-10-15 22:59 target/

推荐答案

将log4j.properties文件放在src/main/resources中,以便将其捆绑到您的JAR文件中,并因此捆绑到类路径中.

Put the log4j.properties file in src/main/resources so that it is bundled into your JAR file, and thus on the classpath.

这篇关于log4j无法使用我的log4j.properties初始化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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