Java程序奇怪的行为,如何修复呢?

时间:2010-03-24 21:00:29

标签: java netbeans

我的笔记本电脑配有英特尔CPU,运行Windows Vista。我的程序看起来像这样:

public class Tool_Lib_Simple
{
  public static void main(String[] args)
  {
    System.out.println("123");
  }
}

当我运行它时,我希望看到:“123”,但输出结果是:“你好NM:你好吗NM?”这是两天前改变我的程序之前的旧输出。如果我将此程序复制到Netbean 6.7中的另一个项目,它将正确运行并输出“123”,如果我将程序名称从“Tool_Lib_Simple”更改为其他项目,它也将输出“123”,但不是在在当前项目的src目录中,“Tool_Lib_Simple”的名称,我已经删除了“build”目录并重新编译,重新构建,它仍然给了我“你好NM:你怎么NM?”因此,在我看来,我的程序的旧版本保存在硬盘驱动器或内存并卡在那里,我已编程多年,几乎没有遇到过这种问题,如何解决这个问题?


编辑:

正如Brian在下面建议的那样,我从命令行运行它:

java -cp“C:... \ build \ classes”Tool_Lib_Simple

结果是:“123”

现在,似乎NetBeans6.7(我也试过6.8,同样的结果)导致这个,我从项目中删除了“Tool_Lib_Simple.java”,将其从另一个项目中复制回来,但结果仍然是一样的,它指向一个旧版本,我该如何克服这个问题? [我试过干净&多次重建,没有工作]

4 个答案:

答案 0 :(得分:2)

我会重新编译它。或手动编译。但在Netbeans中,我认为您可以单击该项目并单击构建或清理并构建。

答案 1 :(得分:1)

你是如何运作的?尝试(从命令行)

java -cp {path to your class} Tool_Lib_Simple

这应该有效。我猜你的个人类路径或IDE类路径指向另一个实例。这里可能会使用find来查找班级的不同实例。

答案 2 :(得分:0)

Netbeans提供了清理和构建的选项,它应该删除旧的编译类并仅运行新代码。从netbeans工具栏中单击看起来像锤子和扫帚头的图标。

答案 3 :(得分:0)

右键单击新项目并选择“设置主项目”,然后按F6键,您应该看到正确的输出。或者如果要运行您正在编辑的当前文件,请按SHIFT F6。 (或者你是如何通过鼠标或键盘启动程序的?)

如果这没有帮助尝试在属性中禁用编译保存(右键单击项目)。

如果没有帮助,可能您选择了错误的文件包名称?试着解决这个问题。

此处链接到您的压缩项目,我们可以进一步提供解决方案。