2016-03-29 9 views
1

私はSTS(Spring Tool Suite)でSpring起動アプリケーションを作成しています。log4jはシステムにログファイルを作成しません

この問題は、log4jを使用してログに記録しようとしたときに発生します。ログファイルはコンソールには作成されますが、システムにログファイルは作成されません。私はフォーラムで与えられたさまざまな方法を試しました(大文字と小文字の区別を含むが、どこかに間違っていると思います)。 log4jのジャー: - 私はコンソールのログだけでなく、ファイル

# Root logger option 
log4j.rootLogger=ALL, stdout, file 

# Redirect log messages to console 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

# Redirect log messages to a log file 
log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=C:\\log4j.log 
log4j.appender.file.ImmediateFlush=true 
log4j.appender.file.MaxFileSize=5MB 
log4j.appender.file.MaxBackupIndex=10 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
#log4j.appender.FILE.layout.conversionPattern=%m%n 
log4j.appender.file.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

のJava CONTRを持ってしようとしています私のlog4j.propertiesファイルで

<dependency> 
    <groupId>log4j</groupId> 
    <artifactId>log4j</artifactId> 
    <version>1.2.17</version> 
</dependency> 

、私は(IndexController.java)をログに記録したいoller

package com.project.Controller; 

import org.apache.log4j.Logger; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 

@Controller 
public class IndexController { 

    final static Logger logger = Logger.getLogger(IndexController.class.getName()); 

    @RequestMapping("/") 
    String index(Model model) { 

     logger.info("in index"); 
     return "index"; 
    } 
} 

あなたはそれ以上の詳細が必要な場合はコメントしてください。おかげ

答えて

0

spring-boot-starter-log4jの依存を作成し、pom.xml.Makeであなたのpom.xmlに以下のエントリspring-boot-starter-loggingを除外する:

<dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter</artifactId> 
      <exclusions> 
       <exclusion> 
        <groupId>org.springframework.boot</groupId> 
        <artifactId>spring-boot-starter-logging</artifactId> 
       </exclusion> 
      </exclusions> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-log4j</artifactId> 
     </dependency> 

これは、ログファイルを作成し、詳細をログに記録する必要があります。

+0

以前に追加したlog4jの依存関係を削除します。 –

+0

'C:'に直接ログオンしようとすると問題になるかもしれません。 – Fildor