2011-07-18 63 views
3

这看起来很奇怪Q.Java代码没有正确更新

我已经用Java编写了代码(在Eclipse中)。然后,我对代码做了一些修改。现在,我正在尝试运行新代码(已修改),但它仍然给我输出前面的代码。

我已经在代码中放了很少的调试点,但它跳过了一些调试点(尽管它应该停止在它们)并停在某个调试点,但即使在这里它也调用了存在于以前的代码在那个位置(尽管我现在已经评论过它们)。它似乎从某个地方仍然在调试旧代码。

如何摆脱它?

谢谢!

+1

它看起来像某种同步的问题。我假设您已经尝试使用Project - > clean清理类缓存,并使用F5刷新项目。 (从文件系统同步)。如果这些都不起作用,那么我相信文件系统中可能存在某种锁定。检查是否有任何其他程序访问同一个项目,是否还有其他锁。 –

+0

@ doc_180,非常感谢您的回复。其实,问题只在于清理项目。我忘了清洁。 ;) – Vikram

回答

6

您是否尝试过清洁项目?

Project(menu) -> clean 

还要确保

Project(menu) -> Build Automatically 

选择,让你写的所有的新代码被编译,然后有

如果清理和构建不起作用,它可能是有一个jar文件包含你编辑的类,所以eclipse将在jar文件中运行编译后的类文件,而不是你当前的文件。

+0

尼瓦斯,非常感谢。我只是在建立工作区并重新启动eclipse。忘记清理它。谢谢! – Vikram

+0

我已经从弹簧工具套装中创建了一个弹簧启动应用程序,然后在eclipse中导入了该项目。问题是我已经删除了目标文件夹和'干净''安装'它,但仍旧旧的代码正在执行。 – viper

+0

为什么eclipse/java如此搞砸了?我的问题仍然存在。使用eclipse霓虹灯。 –

-1

我最近遇到这个问题 - 新代码停止工作。我点击清理 - 然后它不能再找到主类,程序根本不会运行。

我发现的修复(每次工作)都是重构 - 重命名项目。这立即修复它。然后我只是改回名字。然后几天后又发生了,我必须重新命名它才能修复它。

1

有两种可能性,因为它的Java代码不正确更新:

  1. 项目 - >自动构建未选中
  2. .project文件项目org.eclipse.jdt.core.javabuilder构建命令被注释掉或失踪。下面的代码下面提到片不应该说:

    <buildCommand> 
        <name>org.eclipse.jdt.core.javabuilder</name> 
        <arguments></arguments> 
    </buildCommand>