2010-10-19 45 views
2

使用ClassLoader#getResource(),我需要訪問除當前代碼所在的項目之外的項目中存在的文件。如何才能做到這一點?使用類加載器獲取不同項目中的資源

我正在使用eclipse。

目錄結構:

 
Root 
|-project1 
| |-package 
| |-myResourceFile 
|-project2 
    |-package 
    |-myCodeFile 

我試圖從myCodeFile得到myResourceFile,使用myCodeFile.class.getClassLoader()的getResource( 「../../ PROJECT1 /包/ myResourceFile」),但它總是返回null。我不想將project1添加到project2的類路徑中。雖然補充說也行不通。

與問候,

回答

1

這是一個糟糕的主意,試圖從這樣的另一個項目中讀取文件,因爲它關係到你正是這樣的目錄結構。您已經通過使用getResource()而不是使用java.util.File API來解耦項目,從而完成了第一步,以便您可以完全順利完成。

在Eclipse中,您可以將其他項目添加到項目的構建路徑(項目屬性 - > Java構建路徑 - >項目)。你現在應該可以讀取其他項目的文件。