我需要生成一个参数化类(带有泛型的类),给出类的名称和类型参数的名称,但我找不到如何?
似乎PSIClass不支持泛型。
示例
鉴于
String className = "MyClass";
String typeName = "T"
我想要一个代表这个的PSIClass:
public class MyClass<T> { ... }
目标是动态地向这样的类添加方法,并最终将完整的类写入文件。该类需要声明Type变量,因为某些方法将接收/返回T
谢谢!
答案 0 :(得分:0)
我在intelliJ开发者论坛中找到了一个解决方案。它似乎不是最好的,但它确实有效。
我建议使用 PsiFileFactory.getInstance(...)。createFileFromText( “ClassName.java” JavaFileType.INSTANCE,“类ClassName {...}”),转换结果 到PsiJavaFile并使用其getClasses [0]作为结果。
以下是该主题的链接: