簡體   English   中英

在 jar 中加載文件

[英]load file within a jar

我需要在 jar 中打包一個配置文件。 配置文件在 jar 文件的根目錄下。 但是我收到以下錯誤:

引起:java.lang.IllegalArgumentException:URI 在 java.io.File.(Unknown Source) 不是分層的

File url = new File(MyClass.class.getClassLoader().getResource("my.conf").toURI());

您應該使用getResourceAsStream()代替。 如果文件嵌入在您的 JAR 中,則 URI 很可能是 bundle:// URI

InputStream is = this.getClass().getResourceAsStream("my.conf");

為什么需要文件? 如果您需要閱讀配置使用

Class.getResourceAsStream("/my.conf");

這只需是包根目錄中的一個文件夾中的文件(與 jar 的根目錄中的文件相同)

該文件應與 MyClass 位於同一包中。 我剛剛意識到您正在創建一個 File 對象。 而是嘗試使用 getResourceAsStream()。 如果您想從類路徑資源中讀取內容,這是正確的方法。 是示例

暫無
暫無

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

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