2015-03-24 134 views
0

我有一個定義了自定義項目類型的eclipse插件。在項目中創建文件時,它還會創建一些額外的文件作爲「隱藏資源」。當我創建一個新項目並在其中添加/刪除文件時,一切正常。正如我所希望的那樣,額外的文件不會顯示在項目樹中。eclipse插件導入自定義項目

現在的問題是:如果我從工作區中刪除此項目,請保留內容並使用標準導入重新導入,所有隱藏的資源不再隱藏。似乎這些文件的「隱藏」屬性已經消失,儘管我認爲它們應該以某種方式存儲在項目文件夾中。

因此,如果我需要實現自定義導入以將隱藏資源再次隱藏,那麼任何人都可以給我一個提示嗎?或缺少什麼?無法找到與谷歌的答案。老實說,我甚至不知道這是否可行,因爲如果我導入一個Maven項目,我可以看到.project和.classpath也顯示出來,儘管它們在創建項目時是隱藏的。

+0

看起來隱藏標誌作爲'ResourceInfo'數據的一部分存儲在工作區.metadata目錄中,因此它不是項目的一部分。如果沒有這些信息,你有沒有辦法確定哪些文件應該隱藏? – 2015-03-25 08:26:03

+0

謝謝格雷格,是的隱藏資源有自己的文件擴展名,所以我可以識別它們。 – boreas 2015-03-25 09:48:54

+0

正常的導入項目嚮導是'org.eclipse.ui.wizards.datatransfer.ExternalProjectImportWizard'然而它使用的大部分東西都在內部類中,所以很難改變。 – 2015-03-25 10:07:36

回答

0

如果其他人有相同的問題:這可以用IResourceChangeListener來完成。例如。

IResourceChangeListener listener = new MyResourceChangeReporter(); 
ResourcesPlugin.getWorkspace().addResourceChangeListener(listener,IResourceChangeEvent.POST_CHANGE);