2012-11-21 163 views
3

我刚刚在Eclipse中编写了一个Java多线程程序。它编译得很好,像魅力一样工作。Java代码没有用'javac'编译,而是在Eclipse中编译

但是,因为这是课程,我们需要确保它在命令行中使用'javac'进行编译,否则我们将得分为零!

所以,有些类别编译别人不会。我得到的错误如下(它们全都与类名不同,只是一个例子)

GateRunnable.java:7: cannot find symbol 
symbol : class Station 
location: class package.name.here.GateRunnable 
    public GateRunnable(Station st) { 
         ^

这是javac的问题?任何帮助赞赏。

+0

获取类路径权限。 – djechlin

+0

您能否添加关于您的项目包/类结构的信息以及您的'javac'命令的外观? – Pshemo

+0

在CMD我在src文件夹中,我输入:javac GateRunnable.java它给了我上面的错误,因此我试图逐个编译类 – DSF

回答

2

为了解决我遇到的问题,它只是需要通过使用以下命令编译所有类:

javac *.java 

其编译目录中的所有 java文件。

0

您是否已经编译过您的文件夹/包中的每个.java文件?如果不是,那就这样做。 Eclipse通常会为你做这件事,但在终端中你负责编译代码的每一部分。

+1

...并且你需要开始编译你的。 java文件在别人之前没有依赖于你自己的java类。另外,如果您使用任何第三方库,请不要忘记使用-classpath命令行选项(http://docs.oracle.com/javase/1.4.2/docs/tooldocs/windows/javac)设置类路径。 HTML)。 –

+0

不,只要它能找到依赖关系,javac就会编译它们,如果它们需要的话(我每天都会使用javac每天工作)。 –

2

您的编译-classpath和/或-sourcepath不完整。编译器不知道在哪里可以找到类StationHere是一个相关的问题,它描述了如何设置类路径以包含所需的所有类。

+1

如果你有循环依赖(我不希望),你可以看看'sourcepath'选项。 – Andy

+0

无法正常工作。我目前的目录是在我的所有类都在src文件夹中。假设有四个名为Class1.java,Class2.java等。你将如何设置类/源路径以包含所有这些?谢谢 – DSF

+0

http://mattgemmell.com/2008/12/08/what-have-you-tried/ – mbatchkarov