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 /”可解决此问题。

#1楼 票数:0

通过将“ lang \\”重命名为“ lang /”来解决

  ask by Sage M translate from so

未解决问题?本站智能推荐:

1回复

多行Maven属性

在 maven 构建期间,我需要用多行替换一个属性:这是示例 文件1.xml 我想通过以下测试替换 property1 我该怎么做? 我不能在 po.xml 中将所有这些行放在一个属性中。
2回复

在运行时更新资源文件

当我的应用程序启动时,它使用以下代码读取配置属性文件: 我能够读取和设置单个属性。 属性文件位于src/main/resources ,在我使用maven构建应用程序之后,将其副本放置在target/classes 。 当我打开它时,创建的jar文件在根目录中也有一个副本。
1回复

从POM内的classpath检索属性

对于我当前的项目,我想集成一个用于数据库迁移的Maven插件。 但是,要使该插件正常工作,我必须在POM中获取数据库设置。 我的数据库设置当前位于hibernate.properties文件中,该文件位于标记为maven资源的目录中。 由于各种原因,我不想在pom和hibernate.pr
1回复

Maven构建war包,替换WEB-INF下上下文目录中的属性

我有一个Maven项目的目录是这样的- 我想替换上下文目录中project.properties中的内容。 test.properties和project.properties都是- 像这样的pom.xml- 这样我跑步的时候 test.properties可以
1回复

在编译阶段无法在自定义Maven插件中检索资源

我创建了一个在编译阶段运行的自定义Maven插件。 插件尝试在类路径上查找资源,但找不到它。 插件: 在插件的代码中,我正在使用: 尝试将myFile.txt放入项目的根目录,src文件夹或src / main / resources文件夹时,执行mvn全新安装时将导致Nul
2回复

程序在IDE中运行,并且jar文件中包含资源,但是应用无法读取它们-为什么?

场景: 我的应用程序树中有一个包含图像的目录/文件夹 ancilliaryUI/Graphics/FAS-IconFiles/{*.png} 在IDE(netbeans)中,我的代码获取资源作为/ancilliaryUI/Graphics/FAS-Ico
3回复

Maven资源文件,将java类文件和属性文件放在同一目录中

我在同一目录中有java类文件和属性文件。 的src / main / JAVA / COM /柏林/的Test.class 的src / main / JAVA / COM /柏林/ Test.properties 使用我构建的maven jar和maven目标,我希望它们出
1回复

Maven资源未在jar文件中复制

我的maven项目有一个父POM和三个子POM。 我的父母POM看起来像这样 但是问题是我的资源没有被添加到jar文件中。 这可能是什么问题?