Java 如何正确设置ResourceBundle和ClassLoader?

Java 如何正确设置ResourceBundle和ClassLoader?,java,classloader,resourcebundle,Java,Classloader,Resourcebundle,我想将正确的ResourceBundle传递到我的Jasper报告中,但我不确定具体怎么做。这是我目前的代码: Locale locale = Locale.getDefault(); ClassLoader classLoader = getClass().getClassLoader(); File file = new File(classLoader.getResource("Bundle.properties").getFile()); URL[] urls = {file.toUR

我想将正确的ResourceBundle传递到我的Jasper报告中,但我不确定具体怎么做。这是我目前的代码:

Locale locale = Locale.getDefault();
ClassLoader classLoader = getClass().getClassLoader();
File file = new File(classLoader.getResource("Bundle.properties").getFile()); 
URL[] urls = {file.toURI().toURL()}; 
ClassLoader loader = new URLClassLoader(urls); 
ResourceBundle rb = ResourceBundle.getBundle("bundle", locale, loader);
但这给了我

java.util.MissingResourceException:找不到基本名称捆绑包的捆绑包,区域设置XX\u XX

错误:(

我的包文件在这里:

src/main/resources/Bundle.properties
src/main/resources/bundle_en.properties
src/main/resources/bundle_de.properties

谢谢!

首先,我认为您应该使用
classLoader
,而不是
loader
。我猜
loader
只是一个失败的解决方法,所以我建议您删除它

其次,回退包文件可能应该称为
bundle.properties
,而不是
bundle.properties