2012-11-14 64 views
0

我有以下的屬性文件相對路徑發佈的Eclipse

fileLocation = C:\用戶\桌面\ SomeFolder tickerNames = C:\用戶\桌面\ SomeFile.txt

我訪問像

Properties configProp = new Properties(); 
     String propertyValue = null; 
     try { 
      InputStream in = PropertyGet.class.getResourceAsStream("/application.properties"); 
      configProp.load(in); 
      propertyValue = configProp.getProperty(propertyName); 

無論我嘗試什麼,當我創建一個可運行jar文件它只是不會拿起文件的位置。我如何構建文件以便我的可運行jar可以找到它們?

感謝

+0

fileLocation屬性與傳遞給getResourceAsStream()的String有什麼關係? –

回答

0

如果試圖將其加載爲「/application.properties」,它會從classpath的根加載。如果你將你的屬性文件打包到你正在構建的可執行jar文件中,這將會成功。

如果你想側加載屬性文件,例如。從與jar相同的目錄中,可以在啓動jar文件時指定類路徑,並確保該目錄包含在屬性文件所在的位置。

0

答案是將.properties文件放入jar中的資源中。