我想在我的Java应用程序中使用gradle读取json文件。当我在Intellij中运行应用程序并gradle运行时,它运行良好,但是当我进行gradle dist并运行该jar时,它将抛出FileNotFound。如果我用winrar打开jar,我会在正确的目录中看到文件。
我已经尝试过以所有可以找到的方式获取文件,其中一些是
new FileReader("data/user-data.json");
new FileReader(new File(getClass().getResource("data/user-data.json").getFile()));
new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("data/user-data.json")));
还有很多。
有人可以帮助我吗?让我知道您是否需要更多信息。
答案 0 :(得分:0)
您忘记在资源路径中添加“ /”:
getResourceAsStream("/data/user-data.json")
您的罐子应该看起来像这样:
root (*.jar)
|-- data
|-- user-data.json