我有註釋處理器其中應產生具有通過接口獲取方法中定義的密鑰的枚舉。無法加載資源在註釋處理器(未在類路徑)
接口駐留在
MyProject的/ SRC /主/爪哇/ my.package.MyInterfaces.java。
我想驗證位於MyProject/src/main/resources/META-INF/resource-bundle/
中的屬性文件是否包含生成的枚舉中定義的鍵。
我的問題是屬性文件不能通過處理器的類加載器或通過Filer.getResource(...)。
如何使該項目的源或類路徑可用於處理器,以便我可以加載屬性文件?
現在我只有處理器駐留在jar中的資源可用。 我曾嘗試通過eclipse Project/Properties/Java編譯器/註釋處理/處理器選項來定義-classpath和/或-sourcepath,但沒有成功。
有沒有人遇到過這樣的問題,任何人都可以給我一個線索,我怎樣才能使可用的處理器資源?
我確實有maven結構,但不使用maven,因爲應用程序中的舊依賴關係。所以maven現在不適合我。
的Eclipse 3.6赫利俄斯 似乎
StandardLocation.SOURCE_PATH
和StandardLocation.CLASS_PATH
未在文件管理器#getResource()方法來實現,所以寫生成的源或類文件SOURCE_PATH
或CLASS_PATH
似乎是不可能的,還訪問上SOURCE_PATH
和CLASS_PATH
任何文件*
謝謝。
是的,它似乎沒有實施。任何人都有解決方法? – Arne
你們每個人都解決了這個問題嗎?我有一個類似的問題:http://stackoverflow.com/questions/29658252/how-to-obtain-the-right-javafilemanager-in-a-java-annotation-processor – jurgenv
比源位置更重要的是位置在你的輸出文件夾中。你是否檢查過該文件是否在output/META-INF/resource-bundle中?你如何建立?什麼是您的輸出文件夾,以及您在加載包時指定了哪個路徑? –