簡體   English   中英

路徑更改時,getResourceAsStream返回null

[英]getResourceAsStream return null when path changed

一切正常,直到我將文件相對於資源文件夾/src/main/resources/settings移到內部文件夾

Files.newDirectoryStream(Paths.get("./src/main/resources/settings"), path -> path.toFile().isFile())
    .forEach(value -> {
        if (value.toString().endsWith("properties")) {
            Properties currentProp = new Properties();
            try {
                currentProp.load(this.getClass().getClassLoader().getResourceAsStream(value.toFile().getName()));
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    });

getResourceAsStream(value.toFile().getName()) -返回null

如前所述,如果文件直接位於資源文件夾中,則所有文件運行都將順利進行。

我相信getResourceAsStream可以找到相對於類路徑的文件。 假設您的文件夾結構是標准的行家,則只需要將settings傳遞給Path.get 現在有了代碼,它將在src/main/resources/src/main/resources/setting查找,這可能不是您想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM