java.util.MissingResourceException: Can't find bundle for base name 'property_file name', locale en_US

8 浏览
0 Comments

java.util.MissingResourceException: Can't find bundle for base name 'property_file name', locale en_US

我正在尝试创建一个实用类ReadPropertyUtil.java,用于从属性文件中读取数据。尽管我的类位于一个util目录下,但我的skyscrapper.properties文件放置在另一个目录中。

但是,当我尝试使用[ResourceBundle][1]访问属性时,我会收到无法加载包的异常。

下面是我如何读取属性的代码,以及一个显示我的目录结构的图片。

ReadPropertiesUtil.java

/**
 * Properties文件名。
 */
private static final String FILENAME = "skyscrapper";
/**
 * 资源包。
 */
private static ResourceBundle resourceBundle = ResourceBundle.getBundle(FILENAME);
/**
 * 读取属性值的方法。
 * 
 * @param key
 * @return
 */
public static String getProperty(final String key) {
    String str = null;
    if (resourceBundle != null) {
        str = resourceBundle.getString(key);
        LOGGER.debug("找到的值: " + str + " 对应的键: " + key);
    } else {
        LOGGER.debug("属性文件加载不正确!!");
    }
    return str;
}

目录结构

enter image description here

这一行出现错误private static ResourceBundle resourceBundle = ResourceBundle.getBundle(FILENAME);

我无法理解为什么这个方法不起作用,以及解决方法是什么。src文件夹已完全添加到构建路径中。

0