我正在尝试帮助正在收到ClassFormatError的客户端。错误消息说
bytecode array size > 65535 at offset=66370
堆栈跟踪指示尝试在实用程序类中调用静态方法时发生错误。我无法在自己的系统上重现该错误。
我尝试了Google搜索问题(search = classformaterror“字节码数组大小”,包括引号),但发现其他软件的错误报告,但没有帮助。我也尝试在此处搜索,但是找不到涉及此特定错误消息的结果。 (也许我只是找不到他们...)
任何想法可能导致此问题吗?我无法发布代码或实际的堆栈跟踪信息,因为它们是专有的。
在此先感谢您提供任何指导,您可以向我介绍如何查找。
最佳答案
这表明实用程序类方法基本上太大了,需要拆分。不同的编译器将输出不同数量的代码-我猜也可能是不同的VM或多或少严格地执行约束。
另外,您可能会发现编译没有调试信息的实用程序类将使方法处于限制之下-但最好将其拆分。