eclipse调试显示错误行号的源文件

时间:2013-05-09 20:08:50

标签: eclipse debugging

当我单击F3并深入研究方法定义时,eclipse会进入依赖jar。 -----第一个问题:它在哪里获得源文件?我没有看到包含实际源文件的jar,它是否反编译? ----我设置断点,然后运行debug。

但调试过程似乎永远不会出现在正确的断点上,我设置的断点很少被执行。事实证明,显示的源代码是错误的,因此断点也设置在错误的位置。

这是我从eclipse窗口看到的内容:

/*     */   public <T> T execute(URI url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor)
/*     */     throws RestClientException
/*     */   {
/* 415 */     return doExecute(url, method, requestCallback, responseExtractor);
/*     */   }`

每行之前的注释似乎显示正确的行号,但它们与eclipse窗口框架左侧显示的真实行号不匹配。即,上述代码段占据窗口中的行315-319,而不是415。

那么如何在调试过程中获取正确的源并显示它们呢?我必须手动抓住所有的罐子吗?有没有办法在我的pom文件中指定?

感谢 杨

3 个答案:

答案 0 :(得分:4)

在Eclipse中,您可以在Run - &gt;下指定调试源。调试配置。从列表中选择您的调试配置,并在“源”选项卡中配置源查找路径

答案 1 :(得分:2)

因为当我用谷歌搜索时我没有找到解决方案,这是第一个搜索结果,我想分享一下我是如何解决这个问题的。

  1. 在Eclipse中,确保选中Project > Build Automatically;
  2. 右键点击项目并转到to Build Path > Configure Build Path...
  3. 检查选项卡是否有错误(缺少依赖项,找不到源等),修复/删除它们并按OK。
  4. 在Eclipse中,转到Project > Clean...,选择您的项目并按OK;
  5. 如果您在步骤3中遇到错误(如拒绝访问或类似错误),请转到项目的根文件夹并查找名为.classpath的文件。编辑文件并手动修复/删除导致错误的块。

    当Eclipse没有在编译错误的类中显示错误图标时,这也解决了。

答案 2 :(得分:0)

我遇到了这个问题,并且因为我的fun getBar()中有多个版本的相同依赖项而无法解决。所以我通过删除不必要的版本来解决它。

默认位置为- .m2