自从升级我当前的项目以在Eclipse中使用新的R14工具以来,我现在无法调试我的库项目中存在的任何代码。
当我在我的库项目代码中遇到断点时,而不是Eclipse打开原始源文件,它会打开JAR中包含的源文件的只读副本,并显示消息“Source not found”。 / p>
我一直在寻找解决方案,但尚未遇到任何问题。有没有人有任何建议?无法调试是一件非常痛苦的事。
修改
问题又回来了,我再也无法调试了。我没有改变任何项目设置或任何东西。非常令人沮丧。
答案 0 :(得分:44)
尝试了上述所有内容并且它对我不起作用,但是此处详述的解决方法确实如此。
http://code.google.com/p/android/issues/detail?id=20731
- 开始调试,然后运行直到遇到断点(并准确地获取.class文件而不是你想要的.java)
- 右键单击Debug透视图的Debug视图(例如在调用堆栈上),然后选择“Edit Source Lookup Path”
- 将所有项目添加到“默认”上方,通过“添加...”> “Java项目”> “全选”
醇>
(我正在使用来自http://tools.android.com/download的ADT 15.0.2预览)
答案 1 :(得分:17)
在遇到这个问题并进行一些研究之后,我遇到了这个帖子,另一个提示我。我已经把头发拉了出来。
事实证明问题在于你的项目的构建顺序(无论如何我的)。由于ADT / SDK v14改变了库项目的引用方式,因此构建顺序必须正确。确保首先构建应用程序使用的所有库。我只是将每个项目的“src”和“gen”文件夹移动到底部,现在它首先构建库,然后我可以调试它并通过主项目查看我的库文件的来源。
如果有人不知道在哪里这样做,在Eclipse中,右键单击您的项目和“Build Path”,然后单击“Configure Build Path”。然后,在“订购和导出”选项卡上,将项目的两个文件夹移动到库下方列表的底部。我为我的所有项目和图书馆项目做了这个。
您也可以在Eclipse中从Windows全局执行 - > Preferences-> General-> Workspace-> Build Order并将您的库项目移至顶部。我认为每个项目中定义的构建顺序会覆盖这个,所以你可能想在两个地方都这样做,以解决现在和未来项目的问题。
我希望这对您和遇到此烦人问题的其他人有所帮助。 :)
谢谢, 编
答案 2 :(得分:2)
我今天在一个项目中遇到了同样的问题。该项目由一个具有两个库依赖项的应用程序组成。在调试期间和在重写方法时使用自动完成时,我无法看到代码,Eclipse无法推断出正确的参数名称。
首先,通过显示'gen'文件夹被用作包含源的文件夹来表明问题。要检查这是否是同一个问题,请转到您的应用程序项目,打开Android依赖项并查看库依赖项的属性。位置路径说/ libraryprojectname / gen。
如果这也是您的问题,请转到每个图书馆项目的“订购和导出”标签,然后移动“src”项下方的“gen”项。一旦你单击OK,Eclipse就会运行一下,当你检查Android依赖属性时,位置路径应该是:/ libraryprojectname / src。打开单击依赖项并打开jar中的任何类。它应该显示来源。
我正在使用ADT插件20.0.3与Android SDK Tools 20.0.3和Android SDK Platform Tools 14。
答案 3 :(得分:2)
以下在Eclipse Juno上为我工作:
在项目属性/ Java构建路径中:
不确定它是否相关,但Android SDK工具是rev 20.0.3,Android SDK平台工具是14。
祝你好运。答案 4 :(得分:0)
我假设您正在打开图书馆项目,并在那里放置了刹车点。 试试这个:在主项目上打开Library Projects-> [yourlibrary.jar] - > [yourfile.class]从Package Explorer中,然后在.class文件中输入制动点。 这至少对我有用:)
答案 5 :(得分:0)
有时这种情况发生在我身上。不确定原因,但我解决的方法是:
从eclipse中删除主项目。 - Closs Eclipse - 删除库项目中的jar文件 - 打开Eclipse - 等待库项目编译 - 导入主项目
答案 6 :(得分:0)
Juno内部的ADT发布21也会出现此问题。作为解决方法,在调试透视图的“调试”视图中(您可以看到线程和方法调用跟踪),右键单击并编辑源查找路径。