【问题标题】:Can't retrieve properties file in maven resources无法在 Maven 资源中检索属性文件
【发布时间】:2018-01-24 01:40:41
【问题描述】:
public class LanguageUtil {

    public static Properties properties = new Properties();

    private void loadLanguageConfig(String filename) {

        try {
            String resourceName = "lang\\" + filename; 
            ClassLoader loader = Thread.currentThread().getContextClassLoader();
            try(InputStream resourceStream = loader.getResourceAsStream(resourceName)) {
                properties.load(resourceStream);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

错误:

java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at <package>.testing.Main.main(Main.java:26)
Caused by: java.lang.NullPointerException
        at java.util.Properties$LineReader.readLine(Unknown Source)
        at java.util.Properties.load0(Unknown Source)
        at java.util.Properties.load(Unknown Source)
        at <package>.LanguageUtil.loadLanguageConfig(LanguageUtil.java:19)
        ... 5 more

第 19 行是“properties.load(resourceStream);”

我正在尝试从 maven 创建的资源文件夹中的“lang”文件夹中检索文件。当 jar 构建时,我打开 jar 和 lang 文件夹,以及 lang 文件夹中的文件。

编辑:感谢https://stackoverflow.com/users/679824/krishnan-mahadevan 的帮助!将“lang\”的文件夹路径更改为“lang/”解决了这个问题。

【问题讨论】:

  • 什么语言\\?文件夹?
  • 您能否尝试将String resourceName = "lang\\" + filename; 更改为String resourceName = "/lang/" + filename; 看看是否有帮助?
  • 成功了!将它从“lang\\”更改为“lang/”有效!它以前在 IntelliJ 中工作,而不是在控制台中。现在它适用于两者!
  • 请添加自我回答。我会帮助其他人搜索未回答的问题

标签: java maven properties nullpointerexception resources


【解决方案1】:

通过将“lang\”重命名为“lang/”修复

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-27
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 2018-07-27
    • 1970-01-01
    相关资源
    最近更新 更多