我想使用try and catch找出错误行号。我试图从How to get error line number of code using try-catch获取一些信息,但是由于我使用了其他语言,因此没有帮助。
现在,我得到java.lang.NumberFormatException: For input string: ""
try {
// My Code Here
} catch(Exception e) {
System.out.println(e);
}
我也尝试打印e.getStackTrace()[0].getLineNumber());
,但似乎没有显示正确的错误行号。我有什么办法可以轻松获得它吗?我有一个很大的文件,我认为我无法逐行检查问题所在。
谢谢!
答案 0 :(得分:2)
如果使用Logger库,它可以在调试模式下打印指向行号的堆栈跟踪。否则printStackTrace()是您的朋友。
try {
// My Code Here
} catch(Exception e) {
System.out.println(e);
e.printStackTrace(); // This will give line number
}
答案 1 :(得分:1)
package com.ms.common;
public class Run {
public static void main(String[] args) {
try {
int value = 5;
int divider = 0;
int result = value / divider;
} catch (Exception e) {
System.out.println(e.getStackTrace()[0]);
}
}
}
Run.java在第11行出现错误
com.ms.common.Run.main(Run.java:11)