Javassist を使用してクラスを作成します。また、テスト スイートでは、2 番目のテストが同じクラスを作成しようとするとpool.makeClass( ... )
、クラスが凍結されている (つまり、toClass()
.
これを克服する方法は何ですか?理想的には、最初のテストで何らかの方法でクラスを削除する必要があります-おそらくクラスローダーからアンロードします-しかし、 JLSで読んだように、アンロード操作は信頼できません。
したがって、おそらく回避策は、クラス作成コードが存在するかどうかをチェックインし、存在する場合は、defrost()
すべてのメンバーなどを削除して再作成することです。
他のアイデアはありますか?
または、Javassist を介してクラスを削除する信頼できる方法はありますか?