有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java getResourceAsStream返回null?

我也看到过类似的帖子,但它们中的任何一个都可以解决我的问题。我有我的环境。我要通过以下方式访问的属性:

InputStream inputStream = this.getClass().getResourceAsStream("/support/environment.properties");

inputStream始终接收空值。这是我的项目结构

MyProject
->src
-->test
--->java
---->com.desp.automation.config (package)
----->CrossAutomationConfigTest
-->main
--->resources
---->support
----->environment.properties

你知道发生了什么事吗?谢谢你的帮助。问候


共 (1) 个答案

  1. # 1 楼答案

    这种事一直发生在我身上!资源的实际路径取决于类加载器,这意味着它取决于您是在纯java中运行,还是在web容器中运行。我通常通过玩路径来找到它。。。尝试的事项:

    (1)/资源/支持/。。。 (2) /main/resources/support/。。。 (3) 以上无前导/

    我认为对前导/的要求取决于您是从静态方法还是非静态方法调用getResourceAsStream,以及资源是否打包在归档(zip/jar/war)中,还是应用程序未归档到部署环境中的文件中

    为了避免部署问题,我编写了一些代码,通过尝试getResourceAsStream来“发现”路径,直到返回非null inputStream