【发布时间】:2019-09-13 11:25:52
【问题描述】:
这里是我项目的每个模块的简化结构:
src
|- main
|- java
<My classes>
|- resources
config.properties
|- test
|- java
MainTest
|- resources
我最近将 IntelliJ 更新到了 2019.2 版本。由于 Jetbrains 删除了“取消选中为每个源集创建单独的模块”(请参阅 this post),当我导入 Gradle 项目时,我最终得到一个具有两个子模块的模块:main 和 test。
所以,在 Intellij 项目结构中,我有这个:
主子模块
测试子模块
在某些课程中,我以这种方式加载 config.properties 文件:
InputStream inputStream = MyClass.class.getClassLoader().getResourceAsStream("config.properties");
但是当我在 IntelliJ 中运行 MainTest.main() 时,它有时会调用上面的代码,结果 InputStream 为空。
我猜test 模块类路径不包括main 资源文件夹...
我该如何解决这个问题?
当我可以选中“取消选中为每个源集创建单独的模块”框时,我只有一个模块和一个类路径,我的生活变得更轻松了......
有没有办法,也许使用 build.gradle 文件中的 Gradle 配置来强制执行一个唯一的模块/源集?
【问题讨论】:
标签: java gradle intellij-idea