我正在尝试使用 cglib 为仅具有私有(private)构造函数的类创建代理。我无法更改可见性,因为它是一种库方法。
我找到了this post ,并按照说明覆盖 filterConstructors
方法,但是当 cglib 尝试调用它时,我得到一个 java.lang.IllegalAccessError
。
我可以以某种方式绕过这个限制吗?
最佳答案
Cglib 通过子类化来工作。因此,cglib 类永远无法访问代理类的构造函数。
你可以尝试做的是重新定义现有的类。为此,您可以使用诸如 Byte Buddy 之类的库。 .
关于java - CgLib 增强器私有(private)构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35232648/