Spring Boot:从Bean中访问命令行参数

7

我运行带有单个参数(文件名)的Spring Boot应用程序。文件包含我在运行时需要的某些属性。应用程序启动时,它会检查 args.length==1

但是我需要在一个单一点上使用这个文件(属性)- 通过 @Component 注释的bean。

是否有一种方法可以从中获取文件内容?

1个回答

8
在Spring中,有一个名为ApplicationArguments的bean,它提供了访问用于运行应用程序的参数的方法。
@Component
public MyComponent {
    @Autowired
    private ApplicationArguments  applicationArguments;

    public void method() {
        List<String> filenameArgs = applicationArguments.getOptionValues("filename")
    }
}

2
如果在常规方法中引用ApplicationArguments,则一切正常。但是当我在init(@PostConstruct)中使用它时,会出现NullPointerException。 - Buch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接