Generics 如何使用BCEL获取类的通用信息?

Generics 如何使用BCEL获取类的通用信息?,generics,bytecode,bcel,Generics,Bytecode,Bcel,我想使用BCEL 6.0-SNAPSHOT获取我的计数器类的通用信息(计数器类)。签名如下: public interface CounterPersistence extends BasePersistence<Counter> { .... } 但是我没能编写一个代码来解析签名并允许我获取类型计数器。 想法?您可以使用FindBugs中的BCEL实用程序,例如方法或更好的切换到框架。我找到了一个解决方案: Class.forName(org.apache.bcel.classf

我想使用BCEL 6.0-SNAPSHOT获取我的计数器类的通用信息(计数器类)。签名如下:

public interface CounterPersistence extends BasePersistence<Counter> {
....
}
但是我没能编写一个代码来解析签名并允许我获取类型计数器。
想法?

您可以使用FindBugs中的BCEL实用程序,例如方法或更好的切换到框架。

我找到了一个解决方案:

Class.forName(org.apache.bcel.classfile.Utility.methodSignatureArgumentTypes("(" + signature + ")V")[0]);

上面的代码给出了
Ljava/lang/Object;Lcom/liferay/portal/service/persistence/BasePersistence签名
Class.forName(org.apache.bcel.classfile.Utility.methodSignatureArgumentTypes("(" + signature + ")V")[0]);