[英]how fix imports using a netbeans plugin /api
我正在開發NetBeans擴展/插件。 現在,我想以編程方式修復導入。 我使用了機器人類並模擬了ctrl + shift + i鍵,這是fix imports
快捷方式。 它有效,但存在一些問題。例如需要聚焦編輯器面板,然后我必須將其帶入字體並等待。有時我必須竊取聚焦。並且由於它是擴展名,如果我執行這種操作可以在內部訪問羽毛模擬我真的不需要擴展。 那么,如何在內部修復從NetBeans擴展的Java類導入?
我同時閱讀了常見問題站點和開發javadoc,但找不到與修復導入選項有關的任何內容。
在我實際使用此功能之前,我已經用光了時間,但希望這會有所幫助。
我認為您想要的類是org.netbeans.modules.java.editor.imports.JavaFixAllImports
如果您有正確的參考文獻,那里的許多方法看起來很有希望。
為了使用它,您需要您的模塊依賴於Java Editor
模塊,該模塊不會公開導出其任何軟件包。 因此,要使用它,您需要單擊“添加模塊”對話框中的“ Show NON-API Modules
復選框,然后您需要編輯模塊依賴性並選擇“ Implementation Version
單選按鈕,並確保選中了“將Include Packages in Classpath
”復選框。
像這樣:
您可以在此處瀏覽源代碼:
它似乎在開始時除了一個許可證和作者注釋之外,在Javadoc注釋方面似乎沒有什么其他功能。
更新
多虧了WillShackleford,我得以修復插件代碼中的導入。 如果有人想知道如何使用netbean插件修復導入(對於Java)。 這是代碼。 您應該導入org.netbeans.modules.java.editor.imports.JavaFixAllImports
public void importFix() {
JavaFixAllImports fiximports = JavaFixAllImports.getDefault();
jtc = EditorRegistry.lastFocusedComponent();
FileObject fo = FileUtil.toFileObject(new File("path of the .java file"));
fiximports.fixAllImports(fo, jtc);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.