当你在Eclipse中使用堆栈中的SDK类获得堆栈跟踪时,如何看待SDK源代码?

时间:2009-02-04 20:34:40

标签: android eclipse

当您使用Eclipse插件和调试器开发Android应用程序并获得堆栈跟踪时,您将看不到任何SDK源代码。你需要采取哪些措施来解决这个问题?假设初学Java程序员。

为了澄清,我希望Eclipse在跳转到堆栈帧时自动向我显示正确的源文件和行。我假设我需要找到正确的SDK源代码,将它们放在我的本地系统上,然后告诉Eclipse如何查找和使用它们。问题是,我究竟是如何做这些步骤的。

3 个答案:

答案 0 :(得分:6)

感谢#android IRC频道上的lukehutch,我指的是blog post,它描述了如何解决这个问题。

这甚至是一个问题的原因是因为谷歌没有包含SDK的来源。 <{3}}可以解决这个问题。

解决方法,如博客文章中更详细的描述,是bug(我为repo命令指定了release-1.0分支,我希望与SDK 1.0-r2对应),收集所有的java源文件并将它们放在sources /目录下的正确目录结构中(它位于SDK的android.jar旁边),然后在Eclipse中刷新jar,此时您可以浏览SDK类源。

最后,在调试器中运行应用程序,直到从SDK类获得堆栈跟踪,然后您将看到一个用于配置源的按钮:添加您创建的sources目录。

上面的博客链接有一个小的Python脚本,可以收集所有的java文件并从中创建正确的目录结构。

答案 1 :(得分:0)

如果您在Eclipse中查看启动配置(Debug-&gt; Run as ...), 你会看到一个名为“sources”的标签

如果您选择“添加”,然后提供包含相关源的存档或文件系统目录,则调试器应该允许您跟踪它们。

您可以从Android网站获取SDK的来源,只需确保您的Jar和您的源版本相同。

答案 2 :(得分:0)

一些不错的人现在已经在Google Code项目中提供了源拉链(最高2.3.3),所以就这样做:

cd path\to\android-sdk\platforms
svn checkout http://fanfq-android-demo.googlecode.com/svn/trunk/android-sdk-src/ .

然后,进入Eclipse,并且:

  • 点击SDK类并点击F3
  • 点击“附加来源”按钮&gt;外部文件
  • 选择路径\至\ android-sdk \ platforms \ android-x.x.x-y-src.zip

在任何Android类和调试器等中点击F3时,您现在应该可以看到源。