java读取package中的properties文件java.util.MissingResourceException

时间:2021-07-20 16:27:05

文件结构:

/build/classes/d914/Hello.class

/build/classes/d914/mess.properties

/build/classes/d914/mess_zh_CN.properties

/build/classes/d914/mess_en_US.properties

在eclipse中运行如下代码:

package d914;

import java.util.ResourceBundle;
import java.util.Locale; public class Hello
{
public static void main(String[] args)
{
//取得系统默认的国家/语言环境
Locale myLocale = Locale.getDefault();
//根据指定国家/语言环境加载资源文件
ResourceBundle bundle = ResourceBundle.getBundle("mess" , myLocale);
//打印从资源文件中取得的消息
System.out.println(bundle.getString("hello"));
}
}

实际上等价于在classes目录下运行命令行:java d914.Hello

自然找不到,必须修改为ResourceBundle bundle = ResourceBundle.getBundle("d914.mess" , myLocale);