Re-run Spring Boot Configuration Annotation Processor to update generated metadata
排查点:
- 添加了
compileOnly('org.springframework.boot:spring-boot-configuration-processor')
依赖 - spring boot 启动类上添加了
@EnableConfigurationProperties
并指定了配置类 - 配置文件
application.properties
中配置了配置属性 - IDE 开启了
Annotation Processor
示例配置:
build.gradle
dependencies {
compileOnly('org.springframework.boot:spring-boot-configuration-processor')
}
SpringBootApplication.java
@SpringBootApplication
@EnableConfigurationProperties({
StorageProperties.class,
SecurityApiProperties.class
})
public class HospitalWebAgentApplication {
public static void main(String[] args) {
SpringApplication.run(HospitalWebAgentApplication.class, args);
}
}
SecurityApiProperties .java
@ConfigurationProperties(prefix = "hospital.security")
public class SecurityApiProperties {
private String baseUrl = "http://localhost:7070";
/**
* 登录接口
*/
private String authApi;
/**
* 注册用户接口
*/
private String signUpApi;
/**
* 退出登录
*/
private String logoutApi;
/**
* 查询自己身份接口
*/
private String meApi;
public String getBaseUrl() {
return baseUrl;
}
public void setBaseUrl(String baseUrl) {
this.baseUrl = baseUrl;
}
public String getAuthApi() {
return authApi;
}
public void setAuthApi(String authApi) {
this.authApi = authApi;
}
public String getSignUpApi() {
return signUpApi;
}
public void setSignUpApi(String signUpApi) {
this.signUpApi = signUpApi;
}
public String getLogoutApi() {
return logoutApi;
}
public void setLogoutApi(String logoutApi) {
this.logoutApi = logoutApi;
}
public String getMeApi() {
return meApi;
}
public void setMeApi(String meApi) {
this.meApi = meApi;
}
}
application.properties
hospital.security.base-url=http://localhost:7070
hospital.security.auth-api=${hospital.security.base-url}/auth/login
hospital.security.logout-api=${hospital.security.base-url}/auth/logout
hospital.security.me-api=${hospital.security.base-url}/user/{userId}
hospital.security.sign-up-api=${hospital.security.base-url}/user/signup
Annotation Processor