2012-03-14 74 views
0

我使用getClass().getResourceAsStream()載入配置文件窗體應用程序類路徑。從應用程序類路徑載入配置文件

當使用apache tomcat服務器啓動應用程序時,加載該文件。

當我在服務器正在運行時對配置文件進行一些更改時,它沒有收到更改。

我可能需要在應用程序運行時進行一些更改。 apache tomcat有沒有辦法在配置文件被更改後加載配置文件?

回答

1

我假設你正在重新閱讀文件,但即使你改變了它,你仍然看到相同的內容?

現在,我會在每次輪詢文件時打印出內容,以便您可以看到a)正在輪詢文件,以及b)內容不變。

另一種可能性是,當你構建一個應用程序時,一個配置文件可能會在很多地方結束,例如,在多個JAR中或在您的文件系統上。根據您的類路徑,可能是您正在更改的文件不是您正在閱讀的文件。即是類路徑中的第一個目錄。

編輯:你可以登錄的網址,getClass().getResource(fileName),因爲這會顯示文件加載的位置?

+0

當我構建應用程序時,配置文件位於tomcat \ webapps \ projName \ WEB-INF \ classes \ config-file中。我確信應用程序正在從上述路徑獲取文件,但是我的問題是它只加載一次文件,並且每次撥打電話時都不會重新讀取文件。 – aswin 2012-03-14 11:28:26

+0

你可以試試我的編輯? – 2012-03-14 11:30:48

+0

我試過你的建議,我得到的結果是文件:/ C:/apache-tomcat-7.0.23-64bit/apache-tomcat7.0.23/webapps/proj/WEB-INF/classes/image_manifest.xml。它是相同的路徑,我改變了配置文件 – aswin 2012-03-14 11:47:16