首页 > 解决方案 > Java:无法使用语言环境定位资源文件

问题描述

以下代码

package com.my.exercise;

import java.util.Locale;
import java.util.ResourceBundle;

public class Main {
    public static void main(String[] args) {
        String language = "en";
        String country = "US";

        Locale l = new Locale(language, country);
        ResourceBundle r = ResourceBundle.getBundle("Bundle", l);

        String str = r.getString("wish"); // Prints "Happy Birthday"
        System.out.println(str);
    }
}

当资源包'Bundle'位于src文件夹中时,适用于具有以下文件夹结构的示例应用程序:

在此处输入图像描述

但是当资源包'Bundle'放在src / main文件夹中时,相同的代码失败并出现错误“线程“main”java.util.MissingResourceException:找不到基本名称Bundle,语言环境en_US的包:

在此处输入图像描述

问题:为了使src/main文件夹中的资源包 'Bundle'可被发现,我需要在我的代码中修改什么?

标签: javalocale

解决方案


非常感谢您的建议,VGR!确实,后端有一个 Maven 项目。尽管在我的本地 Idea 项目中找不到资源文件,但我还是提交了代码,但它确实通过了服务器上的编译。我只是确保我使用了src/main文件夹中的资源包位置。

在此处输入图像描述


推荐阅读