【发布时间】:2016-03-22 16:14:28
【问题描述】:
我有一个带有 Spring Boot 和 maven 的小项目,现在我正在尝试配置 logback 以写入文件。我希望它写入${project.build.directory}/${log.folder}/logfile.log 给出的文件,因此构建目录的子文件夹${log.folder} 是我在application.properties 文件中指定的属性,位于我的/resources 文件夹下。
这是我的 logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<logger name="org.springframework.boot" level="INFO"/>
<logger name="org.springframework.security" level="ERROR"/>
<logger name="org.glassfish.jersey" level="DEBUG"/>
<property resource="application.properties"/>
<appender name="DUMMY_APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${project.build.directory}/${log.folder}/logfile.log</file>
<encoder>
<pattern>%d{"yyyy-MM-dd HH:mm:ss,SSS zzz"}, [%thread] %-5level %logger{5} - %msg%n
</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.folder}/spring.log.%d</fileNamePattern>
</rollingPolicy>
</appender>
<logger name="xxxxxx" level="INFO" additivity="false">
<appender-ref ref="DUMMY_APPENDER"/>
</logger>
<root level="INFO">
<appender-ref ref="DUMMY_APPENDER"/>
</root>
</configuration>
它写入日志,但我的问题是,当我运行应用程序时,它会创建一个文件夹 project.build.directory_IS_UNDEFINED,然后将我的 log.folder 放在它下面。上面写着in the documentation,那个
作为其构建工具,logback 依赖于广泛使用的开源 Maven 构建工具。
当我在 logback.xml 中开始输入 ${pro... 时,我的 IDE 会显示一组可用的maven implicit properties。
所以它应该工作,但它没有。知道为什么吗?
【问题讨论】:
标签: spring maven properties spring-boot logback