Spring
主要特性
安装
常用配置
logback
默认加载
- src/main/resources/logback-spring.xml
参考配置
xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<property
name="LOG_PATH"
value="/v/log/spring" />
<property
name="LOG_PATTERN"
value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX} %-5level %class{20}:%method:%line - [%thread] traceId:%X{traceId} - %msg%n" />
<appender
name="CONSOLE"
class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${LOG_PATTERN}</pattern>
<charset>utf8</charset>
</encoder>
</appender>
<!-- File appender -->
<appender
name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/app.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_PATH}/app.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${LOG_PATTERN}</pattern>
<charset>utf8</charset>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
<logger
name="org.springframework"
level="WARN" />
</configuration>see also
常见问题
- 没有 hot-reload 每次修改 src/main/resources/ 下配置需要重新编译
编译耗时 ~10-40 秒, 用./gradle bootRun代替./gradlew build && java -jar build/libs/my-service-0.0.1-SNAPSHOT.jar- 默认自动加载 src/main/resources/application.properties
- 如何实现自动 reload 配置,需自行编码实现
Unsupported class file major version xxx
Env
- Apple M2
- macOS 14.4
- openjdk 23.0.1
BUG! exception in phase 'semantic analysis' in source unit 'BuildScript' Unsupported class file major version 67
Gradle 和 JDK 版本不兼容导致。修改 gradle/wrapper/gradle-wrapper.properties 后重新构建即可。
| Gradle version | JDK version | Error |
|---|---|---|
| 8.10 | 23 | ... version 67 |
See also
