我創建了一個 Spring Boot 應用程式,當我將它作為 Java 應用程式運行時,它可以正常讀取文本檔案,但是當我想從中生成 .jar 檔案時,它向我顯示一個錯誤,表明該檔案不存在
java.io.FileNotFoundException: ./serviceAccountKey.json (No such file or directory)
我讀取檔案的方法是
@PostConstruct
public void Initialization() {
FileInputStream serviceAccount;
try {
serviceAccount = new FileInputStream("./serviceAccountKey.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount)).build();
FirebaseApp.initializeApp(options);
} catch (Exception e) {
System.out.println("something went wrong in firebase initialization ...");
System.out.println(e);
}
}
我的專案結構如圖所示

uj5u.com熱心網友回復:
在春天,您必須將檔案放在src/main/resources目錄中,然后您可以使用@Value注釋讀取它。
class YourClass {
@Value("classpath:serviceAccountKey.json")
private Resource resource;
@PostConstruct
public void Initialization() {
try {
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(resource.getInputStream()))
.build();
FirebaseApp.initializeApp(options);
} catch (Exception e) {
System.out.println("something went wrong in firebase initialization ...");
System.out.println(e);
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/432216.html
上一篇:設計原則之【介面隔離原則】
