[英]get CtClass using specific ClassLoader
我有一個這樣的類結構:
package com.mydomain.myproject;
public class Outer{
public class Inner{
//some code
}
}
現在,我可以使用以下方法獲取內部類的CtClass
:
ClassPool pool=ClassPool.getDefault();
CtClass innerCt=pool.getCtClass("com.mydomain.myproject.Outer$Inner");
如果這些類是由特殊的ClassLoader
加載的,則會出現問題。
ClassPool#getCtClass
失敗,因為它使用的ClassLoader
不知道該類。
我收到以下異常:
javassist.NotFoundException: io.github.jdiscordbots.nightdream.commands.Eval$Sandbox
at javassist.ClassPool.get(ClassPool.java:430)
at javassist.ClassPool.getCtClass(ClassPool.java:495)
at <my classes>
如何為ClassPool#getCtClass
指定ClassLoader
? 我可以以某種方式設置ClassPool
的類加載器嗎? 我注意到有一個getClassLoader()
方法,但似乎沒有一個 setter。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.