【问题标题】:how to add and read resource file from jar如何从jar中添加和读取资源文件
【发布时间】:2011-07-24 21:55:01
【问题描述】:

我在 java 程序读取的路径中有 hibernate.cfg.xml 和 test.txt。现在,当我使用 maven 创建 jar 时,这些文件不存在。所以我读到我应该放在资源文件夹中,所以现在我的目录结构是

scr -> main-> java

        ->resources

现在我可以看到 jar 中的文件,但它们不在资源文件夹中 它基本上

myjar.jar -> com(源代码)

       -> META -INF
       -> hibernate.cfg.xml
       -> test.txt

我尝试使用

getClass().getResourceAsStream("test.txt")

但得到了空值..

让我知道哪些步骤是错误的?

【问题讨论】:

    标签: java jar maven


    【解决方案1】:

    看看this articlegetClass().getResourceAsStream("/test.txt") 有什么不同吗?

    【讨论】:

      【解决方案2】:

      getClass().getResourceAsStream(name) 在与调用此方法的类所在的类相同的目录中搜索资源。

      例如,您在称为getClass().getResourceAsStream("test.txt") 的同一目录中有类A 和资源test.txt。如果它位于某个子目录中,则需要在name 中表示:getClass().getResourceAsStream("subdir/test.txt")

      我还没有测试过,但是应该可以通过getClass().getResourceAsStream("../test.txt") 来查看高于当前的目录。

      【讨论】:

        猜你喜欢
        • 2021-11-21
        相关资源
        最近更新 更多