Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Eclipse中调试Android时如何查看异常详细信息?_Java_Android_Eclipse_Debugging - Fatal编程技术网

Java 在Eclipse中调试Android时如何查看异常详细信息?

Java 在Eclipse中调试Android时如何查看异常详细信息?,java,android,eclipse,debugging,Java,Android,Eclipse,Debugging,我刚刚开始学习如何为Android开发应用程序。目前,我使用(朱诺)作为。问题是我看不到一种正常的方式来查看在我自己的代码中发生的异常。例如: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); List<BasicObject> objects = _objec

我刚刚开始学习如何为Android开发应用程序。目前,我使用(朱诺)作为。问题是我看不到一种正常的方式来查看在我自己的代码中发生的异常。例如:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    List<BasicObject> objects = _objectRepository.GetAllObjects();
    Iterator<BasicObject> iterator = objects.iterator();

    while(iterator.hasNext())
    {
        ObjectListItemView itemView= new ObjectListItemView(this,iterator.next());
    }
}
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List objects=_objectRepository.GetAllObjects();
迭代器迭代器=objects.Iterator();
while(iterator.hasNext())
{
ObjectListItemView itemView=new ObjectListItemView(this,iterator.next());
}
}
在运行
onCreate
时,\u objectRepository为null,因此会抛出null引用。在那之后,Eclipse显示“SourceNotFound”,这真的不是我所期望的。然后我按F8(继续)多次;进程退出,调试器停止。只有在这之后,我才能在LogCat中看到一些stacktrace(从这里很难找到我自己的代码)

如您所见,捕获异常的所有过程都非常耗时。是否有其他方式查看异常?我做错了什么

我没有使用Android模拟器,我使用的是真正的设备()。 我已经有了LogCat,但我想要更方便/实用的

举例来说,在VisualStudio中,我可以在调试时看到异常。VisualStudio在异常发生的行上设置了一个中断,我可以在异常窗口中查看我想要的任何信息(堆栈跟踪局部变量,实际上所有内容)(请参阅)


在Eclipse中,我在LogCat中获得了异常详细信息(使用起来非常不舒服),并且只有在调试器停止后才能获得异常详细信息。

您可以像这样为Android启用LogCat:

在Eclipse中,转到窗口->显示视图->其他->Android->Logcat

Logcat只是模拟器或设备的控制台


为了向logcat发送消息,操作系统必须做一些事情;这些由(未捕获)异常触发。如果您试图在调试器中单步执行它们,那么会很乏味,并且会得到很多“未找到源代码”(这是系统代码,不是您的)


令人恼火,但可以肯定的是,异常发生后发生的任何事情都不会发生在你的应用程序中,因此你最好在这一点上停止。如果您需要快速查看异常的logcat报告,只需在没有调试器的情况下运行应用程序。

我认为armless coder在eclipse中已经有了logcat,这不是问题所在。@Goldilock,他在调试时发现在android emulator中查看异常很困难。但如果他是以正常代码运行应用程序,他可以看到所有异常从logcat中的应用程序抛出异常。无论哪种方式,logcat都是可以看到所有异常的。UVM:是的,但他/她已经提到在logcat中看到异常,但对它们如何到达那里感到困惑(“只有在这之后,我才能在logcat中看到一些stacktrace”)。注意。logcat在eclipse内部或外部都是相同的。他说,由于Null,会引发一个nullpointer异常。这是一个runtimeexception。runtimeexception可以在logcat中查看。但我理解的是,java中有一些代码段会默默地使用异常。因此在这种情况下,它甚至在logcat中也不可见。所以需要了解更多关于他的代码。Thx,我已经有了一个logcat,我可以在其中看到stacktrace,但只有在我停止调试器之后。我猜“带VS”不是指VS中的android?Logcat是android的一部分,eclipse只是提供了它的一个视图(你可以在没有任何IDE的终端窗口中看到同样的东西)。我不是在VS中开发android应用程序,我使用的是Eclipse。实际上它是“例如在visual studio中”;我的意思是logcat报告中的延迟也不是正常的eclipse事件。这是特定于logcat和android的,并且(我猜想)在VS中也是一样的。异常会在异常报告给logcat之前触发调试器,这就是为什么您必须恢复才能看到在那里报告的原因。