我在java控制台应用程序中有一个第三方库( tibco smartsockets ),但在 Spring Boot Controller 中调用相同的代码时Bean,它会抛出一个
java.lang.IllegalAccessError:尝试访问字段 来自类的com.smartsockets.TipcMsgImpl.j com.smartsockets.TipcConnClientImpl。
反编译TipcMsgImpl类并查看字段 j ,它被声明为 private 。 我的猜测是 TipcConnClientImpl 使用反射来设置 j 字段,这是允许的,但是当在Spring Boot应用程序中运行时,这是不允许的。请注意,调用 System.getSecurityManager()会返回null,因此此处没有使用任何安全管理器。