我正在 Eclipse 中远程调试 Java 应用程序。 (一堆带有 ZIP 文件中附加源的 Alfresco 项目。)
断点确实有效,但是:
1) 每当我在 *.class 文件中设置断点时,Eclipse 都会在到达断点时打开 *.java 文件。
2) 当我在 *.java 文件中设置断点时,会创建一个新 断点(显然独立于 *.class 中设置的断点),并且在断点列表中,它不提供“转到文件”选项。
3) *.java 文件中永远不会显示表示断点的项目符号;无论断点是从 *.class 还是 *.java 文件中创建的。
(如果不是 2 和 3,我当然会很乐意坚持使用 *.java 文件。)
我做错了什么吗? ...或者这是一种常见的行为,我对此无能为力?
最佳答案
在项目的“Java Build Path”首选项中检查“Order and Export”。
(或在运行配置启动器的“类路径”选项卡中)
对于本地项目,如果输出目录('build
' or 'bin
' or 'cls
' or ...)出现在您正在调试的“src
”之前,您将遇到那种“断点”混淆。
对于远程项目,如果 jar 有附加的源代码,它应该可以工作。
关于java - Eclipse远程调试、断点-.java VS .class混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3735443/