簡體   English   中英

如何將關鍵字添加到由intellij插件創建的psi類?

[英]How to add keywords to the psi class created by the intellij plugin?

我正在開發我的第一個Intellij插件,該插件在用戶當前正在處理的文件中生成許多Java靜態內部類。 我能夠生成內部類並將字段添加到該內部類,但是生成的內部類是非靜態的,我如何使內部類靜態? 經過一連串的研究,我知道可以通過psiFactory.createClassFromText()實現此目的,但是由於某些原因,我不想使用此方法。

我認為在以下幾個項目中,可以使用以下代碼實現相同的功能

mClass.addBefore(mFactory.createKeyword("static", mClass), mClass.findInnerClassByName(Utils.getInnerClassName(), true));

但是我無法為我做同樣的工作,這是我創建內部類的代碼

 private void createStaticInnerClass(String className) {
    PsiClass innerClass = psiFactory.createClass(className.trim());
    addFieldsToClass(innerClass);
    psiClass.add(subClass);

}

有人可以啟發我如何使內部類靜態化嗎?

提前致謝

最終,我能夠通過下面一行神奇的代碼innerclass.getModifierList().setModifierProperty("static", true);創建一個靜態內部類innerclass.getModifierList().setModifierProperty("static", true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM