在Java中追踪NullPointerExceptions的根本原因的策略?

时间:2013-06-28 09:52:39

标签: java multithreading exception nullpointerexception

在跟踪Java中NullPointerException的根本原因时是否有任何可接受的最佳实践/策略,特别是在涉及线程时?

后台:我有一个使用Apache的HttpClient 4.2的线程应用程序,我们不时会看到在调用{{1}时出现的NullPointer似乎是什么执行方法。 (“似乎是什么”,因为返回的值只是HttpClient。)我知道所有线程都使用相同的null共享相同的HttpClient(感谢PoolingClientConnectionManager ,打印参考文件),但似乎我们仍然在库中得到与线程相关的错误(可能是由于我们做错了)。虽然我很想找到解决这个特定问题的方法,但我对找到System.out.println(httpClient) s的根本原因的一般方法更感兴趣 - 就像我说的那样,特别是对于线程 ,如果异常在库中被深深地引入,甚至更多。

1 个答案:

答案 0 :(得分:2)

如果第三方库抛出异常或转换它们,您可以将UncaughtExceptionHandler附加到线程。 This也可能有所帮助。

UPD:只是一个建议。是否可以使用自定义类加载器替换标准java异常类?