我应该在这里加载此.properties
文件的路径是什么?我似乎无法加载......
InputStream stream = ProductVersionService.class.getResourceAsStream("/application.properties");
properties.load(stream);
答案 0 :(得分:1)
您需要指定属性文件的完整路径,从根目录到文件本身:/main/resources/application.properties
答案 1 :(得分:1)
我可以看到,你正在使用Maven来构建这个项目,因此你的最终jar也不会有src / main / resource或src / main / java。将删除所有这些目录,并将其下的所有内容添加到jar的根目录,因此使用src / main / *引用路径将导致错误。你应该使用
Thread.currentThread().getContextClassLoader().getResourceAsStream("application.properties")
答案 2 :(得分:1)
Properties prop = new Properties();
prop.load(PropertiesUtil.class.getClassLoader().getResourceAsStream("/main/resources/application.properties"));
答案 3 :(得分:0)
由于您的properties
文件将从war
包中读取,因此最简单的解决方案是将其加载为ResourceBundle
:
ResourceBundle resourceBundle = ResourceBundle.getBundle("main.resources.application");
String prop = resourceBundle.getString("nameofproperty");
System.out.println(prop);
答案 4 :(得分:0)
无需开发定制的东西。
如果你遵循Spring架构,你可以使用这个类:
org.springframework.core.io.support.PropertiesLoaderUtils