登录tomcat不起作用

时间:2015-01-17 20:20:51

标签: java spring tomcat logging log4j2

我有一个基于spring的完整项目,使用了一些控制器,DAO和其他Web应用程序元素。现在我想配置log4j2。我这样做:

<dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-api</artifactId>
      <version>2.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
      <version>2.1</version>
    </dependency>

在src / main / resources文件夹中创建log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <Console name="CONSOLE" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
    </Appenders>
    <Loggers>
        <logger name="com.myproject" level="INFO" />
    </Loggers>
</Configuration>

然后我用main(String [] args)方法创建类,它必须输出一些信息日志:

public class MainClass{
    public static void main(String[] args){

        Logger logger = LogManager.getLogger(MainClass.class.getName());
        logger.info("Entering Log4j Example.");


    }
}

对于运行应用程序我使用:

<groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>1.3.2</version>
          <configuration>
              <mainClass>com.myproject.MainClass</mainClass>
          </configuration>

我在redactor中所做的一切都有自己的控制台。并使用tomcat7 maven插件进行部署。

请说我,我是以正确的方式做错了。如果正确的话我可以看到这些日志的结果,因为在redactor控制台中我也看不到和在tomcat日志中

1 个答案:

答案 0 :(得分:0)

您忘记了目的地追加者:

<Loggers>
  <Logger name="com.myproject" level="INFO">
    <AppenderRef ref="CONSOLE"/>
  </Logger>
</Loggers>

顺便说一下,您将独立应用程序 Web应用程序混淆了。在Tomcat中,您需要一个包含servlet,jsp等的Web应用程序。您可能希望看到How To Create A Web Application Project With Maven