使用共享日志记录配置Gradle多项目

时间:2016-12-08 19:03:23

标签: gradle log4j logback configuration-files

是否有一种标准方法可以在gradle项目布局中的所有子项目之间共享日志配置(例如log4j或logback)?

我现在所做的是在每个子项目的logback.xml中放置log4j.properties(或src/main/resources)的副本,但这会导致此配置文件出现大量不必要的重复

2 个答案:

答案 0 :(得分:2)

在gradle中使用多个工作集可以轻松克服这一点。

在项目的根目录中添加一个新文件夹,示例“ shared-resources”将我们的配置放入其中,然后将以下行添加到子项目中的build.gradle

sourceSets {
    main {
        resources {
            srcDirs = ["src/main/resource", "../shared-resources"]
        }
    }
}

这应该将两个文件都添加到您的jar文件中。

可以在github

中找到一个示例

答案 1 :(得分:0)

util目录中创建一个包含Log4j2配置的共享src/main/resources模块。

然后将util模块导入其他模块。

dependencies {
    compile project(":util");
}

我还将util模块用于可重复使用的Java代码,而不仅仅是一次配置Log4j2。