我的问题:如何使用变量File
在我的班级中注入 a ?Environment
我在properties
需要读取的文件的路径中指定:
myFile.path=classpath:myFile.json
我曾经有一个 XML 应用程序上下文为此定义一个property-placeholder
,properties.file
然后我可以简单地使用注入我的文件@Value
:
@Value("${myFile.path}")
private File myFile;
然而,现在我想做类似的事情:
@Inject
private Environment environment;
private File myFile;
@PostConstruct
private void init() {
myFile = environment.getProperty("myFile.path", File.class);
}
但是抛出异常:
Caused by: java.io.FileNotFoundException:
classpath:myFile.json (No such file or directory)
我也尝试过类似myFile = environment.getProperty("myFile.path", Resource.class).getFile();
的方法,但抛出了另一个异常。
知道属性中定义的路径可以是绝对路径或类路径相对路径,如何实现注入文件?