首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java 9模块系统资源文件位置

Java 9模块系统资源文件位置
EN

Stack Overflow用户
提问于 2018-02-07 21:44:33
回答 3查看 4.1K关注 0票数 3

我不想把所有的问题都写下来,我想把它放在一个图像上。问题是我应该把包含.properties文件的资源目录放在哪里?

有关更多信息和确切问题,请参阅图像。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-02-14 08:31:30

首先,如果您正在使用Intellij和Gradle,尝试将其添加到您的build.gradle

代码语言:javascript
复制
apply plugin: 'idea'
idea {
    module {
        inheritOutputDirs = true
    }
}

更可能的解决方案

根据我的经验,Java9根据是否封装资源的一些规则(见javadocs)锁定了访问资源。

那些对我有用的东西:

  1. 将资源放在“资源”文件夹的根目录中,然后调用 getClass().getClassLoader().getResource("myresource.txt")
  2. 使导致资源的文件夹结构与项目中的适当包匹配。例如,如果您有一个com.your.package,那么您的文件夹结构将是资源/com/ you /package/myresource.txt e.txt。一旦您有了这个功能,您就可以将opens com.your.package添加到Mod-info.java中,并通过调用 YourClass.class.getResource("/com/your/package/myresource.txt")

其他东西来尝试

在Intellij中将资源文件夹标记为资源。

票数 6
EN

Stack Overflow用户

发布于 2018-02-14 11:15:52

在从模块化jar读取属性文件时,我遇到了类似的问题。我将属性文件放置在jar之外,并将属性文件的位置指定为类路径。效果很好。我的Java版本如下: Java HotSpot(TM) 64位服务器VM (构建9+181,混合模式)

票数 0
EN

Stack Overflow用户

发布于 2020-09-19 22:59:05

这是intellij中已知的一个bug。由于一些未知的原因,它将永远悬而未决。

https://youtrack.jetbrains.com/issue/IDEA-197469

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48673769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档