問題描述:如果IDEA無法通過類加載器獲取resources文件夾配置文件,一定是Classpath編譯文件沒有導致的。
1、在通過配置文件來獲取文件信息時,在resouces文件中放入了filenames.properties配置文件,但無法正常讀取到
讀取配置文件信息的代碼:
InputStream is = MyFile.class.getClassLoader().getResourceAsStream("filenames.properties");
2、確保代碼沒問題的話,再看rescources文件夾。
(2.1)、如果是一般的項目。
需要在src/main目錄建一個文件夾
然后將文件夾標記為:
如上圖所示:
source文件夾被標注為source,那么在該文件夾下的配置文件在編譯時會自動復制到編譯文件夾中。
(2.2)如果是maven項目。可以通過配置pom.xml來實現。
<build> <resources> <resource> <directory>src/main/source</directory> <includes> <include>**/*.*</include> </includes> </resource> </resources> </build>
配置完成后,然后rebuild重新編譯一下即可。這樣不用對idea設置,也可以使用maven的編譯命令編譯項目,並復制配置文件到編譯好的文件夾中。
maven項目還可能遇到一個問題:
如果pom.xml是如上顏色,需要右鍵pom.xml——>點擊最后一項 add to Maven project的選項進行修復,完成之后需要右鍵項目,然后 Rebuild—Module一下即可。