gpt4 book ai didi

java - 使用 Spring @Profile 加载 log4j2 xml 配置而不是 maven

转载 作者:行者123 更新时间:2023-12-01 21:12:09 25 4
gpt4 key购买 nike

目前我正在使用 Maven 加载我的 log4j2 配置,如下所示

<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>src/main/resources/env-dev</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<id>test</id>
<build>
<resources>
<resource>
<directory>src/main/resources/env-test</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<id>prd</id>
<build>
<resources>
<resource>
<directory>src/main/resources/env-prd</directory>
</resource>
</resources>
</build>
</profile>
</profiles>

enter image description here

但这需要我为每个环境构建一场新的 war ,这是我想避免的。有没有办法让我使用 Spring @Profile 注释来加载 log4j2 配置?

最佳答案

我还没有尝试过使用 log4j2,但我相信您可以使用属性 logging.config 提供配置文件位置。

举个例子:-

application-dev.properties文件中放置以下内容。可以使用 -Dspring.profiles.active=dev 激活此配置文件

logging.config=/env-test/log4j2.xml

application-prd.properties文件中放置以下内容。可以使用 -Dspring.profiles.active=prd 激活此配置文件

logging.config=/env-prd/log4j2.xml

将这两个配置文件放在 src/main/resources 目录中。

注意:如果使用 YAML 会更方便,因为可以将它们放在单个配置文件中,使用 --- 分隔文档。

关于java - 使用 Spring @Profile 加载 log4j2 xml 配置而不是 maven <profile>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40917737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com