Java编译器找不到符号 - 同一个包中的公共类

时间:2014-01-19 17:14:46

标签: java eclipse

我遇到一个Main类没有找到另一个类是公共的,在同一个文件夹和同一个包中的问题。这两个类都被命名为他们的文件。以下是似乎包含问题的部分:

界面:

package hanoi;

public interface Stack<E> {

...

}

The Over-Class:

package hanoi;

public class DefaultStack<E> implements Stack<E> {

...

}

Used类:

package hanoi;

public class HanoiStack extends DefaultStack<HanoiDisk> {

    public HanoiStack (int a){

        for (int b = a; b > 0; b--){

            HanoiDisk disk = new HanoiDisk(b);

            this.push(disk);

        }

    }
...
}

主类:

package hanoi;

public class TowersOfHanoi{

    HanoiStack stack1 = new HanoiStack(0);
    HanoiStack stack2 = new HanoiStack(0);
    HanoiStack stack3 = new HanoiStack(0);
...

}

文件目录(两者):

...\eclipse\Hanoi2\src\hanoi

Eclipse error: Main class could either not be found or not be loaded

(在主类中实际上有一个主要的方法,但其余的代码变得非常复杂,而且现在看起来并不有趣)

Java Compiler error: could nor find symbol: class HanoiStack

另一个暗示:我的一个朋友正在研究同一个项目,似乎我已经宣布了与我相同的有趣部分,但没有任何问题。

更新:下载完整程序is here

的链接

1 个答案:

答案 0 :(得分:1)

看起来Eclipse正在播放,或者由于某种原因无法编译类。

1)在Eclipse中清理项目。 (项目 - &gt;清理 - &gt;清理所有项目)然后重新启动Eclipse以获得良好的衡量标准。

2)检查项目配置为构建的文件夹是否可写。要查看这是什么,请在源选项卡下查看项目构建路径(右键单击 - &gt;构建路径 - >配置构建路径),检查输出文件夹。

如果这些都没有帮助,您能否在主要课程的位置提供更多信息。例如。是在TowersOfHanoi班吗?