[英]getting null pointer when reading the properties file
在讀取屬性文件時,我獲得了nullpointer
異常。
faceConfig.load(ReadPropertyFile.class.getClassLoader().getResourceAsStream("/resources/faces.properties"));
下面是屬性文件facedetections/src/main/resources/faces.properties
我嘗試了不同的組合作為我的類文件,讀入下面的路徑/facedetections/src/main/java/com/facial/facedetection/utils/ReadPropertyFile.java
組合是../../../../../resource/faces.properties
, /resource/faces.properties
和
../../../resource/faces.properties
請建議我能為此提供的正確路徑。
編輯:我提取了war文件並在下面提供了它的路徑。
在類文件夾下查找屬性文件而不是資源。 因為你的屏幕截圖找不到類文件夾下的資源文件夾。
所以只需使用
ReadPropertyFile.class.getClassLoader().getResourceAsStream("faces.properties")
該路徑相對於對象( .class
)文件所在的點。 您確定已配置構建/測試工具以將資源文件復制到該結構中嗎? 究竟在哪里? 這才重要,而不是來源的位置。
另外,我的理解是大多數ClassLoaders
getResourceAsStream()
不支持..
表示法。
資源文件當前所在的位置超出了ClassLoader
。 如果將文件移動到/facedetections/src/main/java/resources/faces.properties
,那么您將能夠使用當前代碼
getResourceAsStream("resources/faces.properties")
我在假設你的環境。 特別是,這完全取決於類加載器。 如果這沒有幫助,請提供目標文件位置,而不是源(除非它是相同的,但說明它)。
由於在找不到文件時不太可能獲得NPE,因此我假設執行該行時faceConfig
為null
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.