簡體   English   中英

獲取資源文件夾里面的路徑 spring boot jar

[英]Get path of the resource folder inside spring boot jar

我正在嘗試將 java 應用程序項目轉換為 spring 啟動,並且我正在嘗試通過使用以下 cmd 在 gcp 中部署此 spring 啟動項目 jar

gcloud app deploy <projectname>.jar

在我的應用程序中,我正在使用 apache 核心依賴項之一,它需要 2 個屬性文件,它位於項目目錄下

--PROJECTNAME<root>
----/.idea
----/config/bin/config.properties
----/src
------/main
------/...
------/...

我只能設置屬性文件的路徑,剩下的事情將由 apache 依賴項 class 文件處理。 如果這些屬性在 jar 位置本身可用,則它在 IDE 和 jar 中工作正常。

所以當我使用上面的 cmd 在 gcp 中部署這個項目時,我可以看到這個項目被復制到 gcp app engine 的 /workspace/ 目錄下。 所以要么我需要在 gcp 的 /workspace/ 目錄下復制這個屬性文件,要么我需要訪問 jar 中的屬性文件,但我只能傳遞路徑(字符串)。 在 apache class 文件中,下面的代碼用於讀取屬性文件。

BufferedReader reader = Files.newBufferedReader((new File( <path which i can pass> + "/bin/config.properties")).toPath(), Charset.defaultCharset());
and 
FileInputStream fis = new FileInputStream(<path which i can pass> + "/bin/config.properties");

我想你可以把你的配置文件放在 src/main/resources 里面,因為我可以看到你的配置在 src 目錄之外,所以在 class 你需要你可以做的文件getClass().getClassLoader().getResource("config/bin/config.properties")獲取文件為 URL 並為其打開一個 InputStream。

暫無
暫無

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

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