2013-06-18 32 views
1

我有自己的OSGI捆綁包,裏面有一些資源文件夾。如何從包中讀取該文件夾並獲取它的所有子項?如何從OSGI包中獲取文件夾?

我下面的代碼:

Bundle bundle = Platform.getBundle(bundleID); 
    URL fileURL = bundle.getEntry(templatePath); 
    URL url = FileLocator.resolve(fileURL); 

此代碼workd utils的我出口Eclipse應用程序,比如Eclipse的產品之前使用。

但我有URL不是等級excepiton。

回答

2

您可以使用捆綁的findEntries方法來定位包文件和任何連接的片段:

Bundle bundle = Platform.getBundle(bundleID); 
Enumeration<URL> urls = bundle.findEntries("/folder", "*", false); 
+0

嗨,尼克。我有一個類似的問題[** HERE **:*如何將資源目錄和所有包含的文件和子文件夾複製到另一個目錄中](http://stackoverflow.com/questions/36400436/how-對複製一個資源目錄和 - 全包,文件和子文件夾-IN-A-JAR)。我該如何去將OSGi包中的資源目錄複製到另一個目錄中?我怎樣才能實現你在這裏實現的選擇呢?如果你能幫忙,我將非常感激。先謝謝你。 –

1

你應該寫你的代碼InputStreams的使用條款和建議的方法,通過@NickWilson檢索輸入流,並在你的程序中使用它們。

但如果你真的需要一個文件夾中的磁盤上的某個地方爆炸,你​​會使用org.eclipse.core.runtime.FileLocator.toFileURL(URL)代替決心(URL)

相關問題