2013-01-10 37 views
4

我是新來的gradle。我嘗試使用log4j註釋。日誌語句正在使用simpe Groovy文件正常工作。但是當我嘗試使用它們與gradle任務。它沒有被打印。如何在gradle任務中使用log4j

Groovy的文件:

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

搖籃任務:

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

和我一樣使用log4j.properties文件兩種。
日誌在控制檯中打印,而不是在日誌文件中打印。如何將日誌重定向到日誌文件?

感謝

+0

Gradle的[自己的記錄器](http://gradle.org/docs/current/userguide/logging.html)套件您的需求? –

+0

不。它正在將日誌打印到控制檯。但我希望它被重定向到日誌文件。有沒有可能的方法? – Jeevi

+0

也許您需要將'log4j.properties'添加爲類路徑配置?對於部署,我通過Jenkins(ldap,審計跟蹤等)完成此操作。這項工作是通過Gradle構建的,並通過結構進行部署。這是更多的工作來設置,但很好地解決。 –

回答

0

在類路徑將log4j.properties有以下內容(可能的src/main /資源):

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 
2

保存log4j.properties文件中src/main/resources,建立自己的項目。

添加這行:

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

到主gradle.build。然後再次構建並運行。

相關問題