2014-09-28 72 views
1

如何在Java中組織資源?在Java中組織資源

例如,當我將圖片嵌入到我的應用程序中時,我可以在哪個文件夾中存儲它?因爲當我將程序放在一個可執行的.jar文件中時,它會將所有資源(如圖片,文本文件)放到我存儲它的文件夾之外。

+2

傳統上,在Maven構建中,所有非源代碼資源都存放在src/main/resources中,所有Java文件都存放在src/main/java中。然後,Maven將這些位置合併,過濾資源並編譯過程中的Java文件。這意味着資源位於已編譯應用程序的類路徑中。 – 2014-09-28 10:53:34

回答

3

通常的做法是爲資源預留一個包。你可以把它放在任何地方,這取決於需要訪問這些資源的類(沒有規則,這只是組織邏輯的問題)。例如,您的類project.gui.Main需要加載一些圖像,然後可以創建一個project.gui.data程序包並將資源存儲在其中。從Main加載這些資源,可以使用下面的代碼塊:

Main.class.getResource("data/img.png"); 

這種方式,你可以用一個本地路徑訪問資源。如果應用程序需要用jar包裝,切勿使用絕對路徑。