[英]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.