这个问题不是关于转义=或"等字符。在该物业。问题是:
DE#F
而不是DE
(我假设)Spring没有正确读取包含字符串中的#的环境变量 - 在Linux上。 E.g:
yml文件:
# Spring Boot configuration in yml file
application:
username: Clark Kent
password: abc
/etc/environment
APPLICATION_USERNAME="Ronald Raygan" #Maybe use a stronger password?
APPLICATION_PASSWORD="DE#F"
在应用程序中,使用以下值:
@ConfigurationProperties(prefix = "application", ignoreUnknownFields = false)
public class ApplicationProperties {
private String username;
private String password;
// rest of the class
}
在另一堂课:
System.out.println(applicationProperties.getUsername());
System.out.println(applicationProperties.getPassword());
这将打印出来:
Ronald Raygan"
DE