如何在gradle任务中使用log4j

时间:2013-01-10 12:26:55

标签: logging groovy log4j gradle

我是新手。我尝试使用log4j注释。日志语句与simpe Groovy文件一起正常工作。但是当我尝试将它们与gradle任务一起使用时。它没有打印出来。

Groovy文件:

  @Log4j
class HelloWorldLog {
   static void main(args) {
       log.info "Hello world"
    }
 }

Gradle任务:

   @Log4j
    class DeployTask extends DefaultTask {
       @TaskAction
       def deployTaskAction(){
            log.info "DeployTask!!!"
       }
   }

我同时使用相同的log4j.properties文件。
日志将在控制台中打印,而不是在日志文件中打印。如何将日志重定向到日志文件?

由于

2 个答案:

答案 0 :(得分:2)

将您的log4j.properties文件保存在src/main/resources中并构建您的项目。

添加以下行:

war.from('src/main/resources'){ include('log4j.properties')}

到你的主gradle.build。然后再次构建并运行。

答案 1 :(得分:0)

log4j.properties与以下内容放在classpath中(可能是src / main / resources):

log4j.rootLogger=INFO, file

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\myLog.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n