必须使用配置toml文件的路径启动zeebe-broker。但是,在spring上下文中,我只在运行时获得此信息(它是一个cli参数)。 如何定义我的spring配置(基于注释)以为使用给定路径初始化的代理提供bean?
答案 0 :(得分:0)
找到解决方案:可以通过以下方式访问命令行args:
static Function<Environment, Optional<String>> tomlFileFromEnv = environment -> {
String[] args = environment.getProperty("nonOptionArgs", String[].class, new String[0]);
if (args == null || args.length == 0) {
return Optional.empty();
} else if (args.length > 1) {
throw new IllegalArgumentException("requires exactly one cli argument, the tomlFile.");
} else {
return Optional.of(args[0]);
}
};