【发布时间】:2013-09-27 08:25:42
【问题描述】:
我有一个库项目和另一个使用库项目中的一些类的项目。一旦我在其中一个库类中设置断点,并且我的应用程序在断点处停止,Eclipse 就会向我显示错误消息
找不到来源
这个类文件的jar属于容器'Android Dependencies' 不允许对其上的源附件进行源修改 条目
有人可以帮我吗?
【问题讨论】:
-
这不是您要调试的类的源代码。这是一个 .class 文件,它不是源文件。
我有一个库项目和另一个使用库项目中的一些类的项目。一旦我在其中一个库类中设置断点,并且我的应用程序在断点处停止,Eclipse 就会向我显示错误消息
找不到来源
这个类文件的jar属于容器'Android Dependencies' 不允许对其上的源附件进行源修改 条目
有人可以帮我吗?
【问题讨论】:
我在一个 gradle Java 项目中遇到了类似的问题,但消息是这样的: “此类文件的 jar 属于容器 'Gradle.Dependencies',它不允许对其条目上的源附件进行源修改”
在我的情况下,原因是因为我的项目依赖于生成 jar 的其他项目并且这些项目没有更新。因此,解决方案是在每个项目中再次执行所有干净的构建命令,并在我需要运行调试的地方重新部署项目。
【讨论】:
我终于找到了真正最简单的解决方案。
如果您有一个复杂的结构,其中一个库项目使用一个库,并且该库项目用于您的项目,依此类推。或者在任何情况下......这样做来解决这个问题:
导入eclipse你想要的库,可以看到调试过程的源代码。
通过右键单击项目 > 属性 > Android 标记 Is Library 选项
然后转到所有使用该库的库项目, 并右键单击项目 > 属性 > Android > 添加 > 并选择您的库。
然后,转到您的项目和在 Project>Properties>Android>Library_name 中的库项目,单击删除并再次添加它,以便能够假设库项目中的更改。
仅此而已。它只是使用库本身的项目,而不是仅使用您要查看源代码的库的jar。
对于帮助您实现此功能的任何问题,请写信给我。
【讨论】:
我找到了答案!
不知何故(不要问我为什么)Eclipse 弄乱了我的库项目类路径文件。它以错误的顺序列出了“src”类路径条目(参见下面的附件)。
看起来目前只有第一个条目被导出到 libraryproject.jar,它由我的 app-project 使用。 因此,只有 gen-sources 被附加,而不是 src 目录中的源。
【讨论】:
这是 ADT 17 报告的一个问题,您可以找到解决方案 here
【讨论】: