2009-06-04 96 views
13

是否有配置文件應存儲在Java項目中的最佳實踐。在這種情況下,文件類型是Java屬性文件,但我在其他項目中使用其他文件類型。Java應用程序配置文件位置的最佳實踐是什麼?

對於獨立應用程序(.jar)到web應用程序(.war),建議會有所不同嗎?

+0

是否希望能夠在構建完成後更改配置,或者是否希望配置成爲.jar/.war文件的一部分建立? – ScArcher2 2009-06-04 16:30:18

+0

@ ScArcher2,對於我們在這裏的產品發佈版本,我們已經發布了發佈請求,所以更改配置文件與整個包文件一樣麻煩。所以我更喜歡將配置保留在包中 – 2009-06-04 17:35:45

回答

8

你會發現,許多開源項目遵循directory structure used by Maven。在此設置中,您的應用程序源代碼保存在src/main/java中,應用程序資源(包括src/main/resources中的屬性文件)以及src/main/config中的其他配置文件中。與單元測試相關的文件使用類似的目錄結構; src/test/java和src/test/resources。

我個人傾向於使用這種佈局,因爲它的廣泛使用。我還在項目根目錄下保留一個「etc」目錄,以保存與應用程序沒有直接關係的文件。例如,我保留PMD和Checkstyle的配置文件等。

4

通常情況下,通常的做法是在構建過程中將配置文件的resources目錄複製到構建工件中。 Maven在其default project structure中使用這個。在resources目錄中,在應用程序中打包爲war的目錄中可能還有META-INF目錄和/或WEB-INF目錄。

1

我用:

  • META-INF/JAR文件
  • WEB-INF/戰爭文件
相關問題