scala:如何在jar中读取文件

时间:2011-11-30 23:27:00

标签: scala jar

我有像这样的目录结构

  • 的src

      • 资源
        • 的text.txt
        • 你好
          • world.scala
    • 测试
      • 与主文件夹相同
  • 的pom.xml

在IDE(Intellij10)中,我可以使用相对路径(“src / main / resource / text.txt”)访问它,但是当我在jar中编译时,我似乎无法做到这一点。如何阅读该文件?

另外,我发现test.txt是复制到jar的根目录。这是正常的行为吗?因为我担心这会与src / test / resources中的其他资源文件冲突。

感谢

2 个答案:

答案 0 :(得分:2)

来自http://www.java-forums.org/advanced-java/5356-text-image-files-within-jar-files.html -

一旦文件在jar中,您就无法使用标准FileReader流访问它,因为它被视为资源。您将需要使用Class.getResourceAsStream()。

复制到root中的test.txt不是正常行为,可能是IDE的设置。

答案 1 :(得分:0)

8年后,我也面临着同样的问题。为了减轻未来开发人员的生活负担,答案如下:

要复制到根目录中的是normal behaviour,如下所示:

resources文件夹类似于src文件夹,因此内容为 复制,而不是文件夹本身。

现在有关操作问题:

for