我正在研究一个基于Java EE的现有应用程序。
他们以某种方式无法使用该功能。
当我发现Linux服务器中的日志时,我在那里发现了此异常
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
at com.cyber.EasyOptions.view(EasyOptions.java:2054)
这到底是什么意思?
我猜有一个名为EasyOptions的类,并且在其中有一个方法视图,并且在其中有此异常发生?
这个特定的类EasyOptions存在于我们代码中的jar文件中。
我正在使用JD-GUI反编译器,当导航到该特定jar时,看到此类EasyOptions,在视图方法内没有这样的行(2054)
所以不知道我们可以这样匹配行号吗?
我猜我们不能以这种方式匹配行号,我的问题是如何找出错误的确切行?
最佳答案
猜想有一个名为EasyOptions的类,并且在其中有一个方法视图,并且在其中有此异常发生?
没错
我正在使用JD-GUI反编译器,当导航到该特定jar时,看到此类EasyOptions,在视图方法内没有这样的行(2054)
行号仅在原始源代码的上下文中才有意义。反编译的代码与原始代码不同,并且将具有不同的行号。
我们如何找出错误的确切线
如果没有原始源代码,它将变得很棘手。缩小可能性的一种方法是浏览EasyOptions.view()
的反编译代码,查找正在访问数组的位置。