使用EnvironmentPostProcessor
时,可以读取提供的CommandLineArgs
吗?由于此类在Spring Boot 2.1中是程序包专用的,因此我无法将PropertySource
的源强制转换为CommandLineArgs
。
换句话说:如何从SimpleCommandLinePropertySource
获取键和值?
答案 0 :(得分:0)
感谢@AndyWilkinson我弄清楚了。我可以这样读取环境变量条目:
private void processEnvVariable(final PropertySource<?> envSource) {
final CommandLinePropertySource<?> envVariables = (CommandLinePropertySource<?>) envSource;
if (envVariables.containsProperty("myKey")) {
doSthUseful(envVariables.getProperty("myKey"));
} else {
throw new InvalidParameterException();
}
}