2016-08-20 56 views
0

我在我的luminus应用程序中有NullPointerException [no message]。该代码很长,在这里发布,我无法找到错误的来源。在日志中没有提及“NullPointerException [no message]”,并且在浏览器中错误没有意义,并且错误的确切位置和变量未精确显示。NullPointerException [无信息] - 如何找到它的源代码?

如何追踪导致错误的原因?

回答

-1

空指针异常是由于访问/使用保存该值的变量而引起的。作为程序员,我们必须对从其他函数返回值的变量进行空查找。

如果你想跟踪它只是保持调试点,你从哪个动作得到这个错误n chuck哪个变量你的访问为空值。

+0

“如果你想跟踪它只是不断调试点从集体诉讼” - 怎么样? – Johshi

+0

动作(在struts中)/控制器导致你抛出异常。 – Veeresh123

+0

或者如果你知道哪个类/方法抛出异常,那么在进入或开始类/方法前保持断点 – Veeresh123

0

,我认为这样的错误的做法是

  • ,如果它是一个新的错误(最近开始发生),那么很可能它是由最近添加的代码引起的。所以使用该代码作为起点
  • 查看是否有任何可能返回nil值的API调用。尝试用一个接一个地替换每个具有真实硬编码值的API,并且一旦找出哪个API调用正在返回nil,然后深入挖掘,看看您是否仍然看到错误
  • ,再传递任何错误的参数给API,或导致一些情况下,由于它被返回nil

HTH :)

+0

no api calls .... – Johshi

+0

'然后深入挖掘,看看你是否将任何错误的参数传递给API,' - 宾果。又怎样? – Johshi

+0

您需要检查API的签名(源代码和/或文档)。 ps:通过API我真的意味着任何内部/外部功能 –