我的程序由扩展其他类的类组成。问题是,当我尝试在cmd中编译它们时,系统显示“找不到符号”。一些讨论类似问题的站点提到包括 CLASSPATH 中的源文件夹。我按照他们说的做了,但仍然出现同样的错误。但是,它在 Eclipse 中运行顺畅。任何想法为什么?
问问题
1411 次
1 回答
1
确保首先编译顶级类。如果您尝试编译扩展其他类的类,并且您没有.class
为该类编译文件,您将收到该错误。
package pkg1;
class A { }
package pkg2;
import pkg1.A;
class B extends A { }
对于上面的代码,你应该先编译.java
包含你的文件class A
才能让你的.java
文件包含class B
编译。此外,在您的类路径中设置包含您class files
的路径。
在 Eclipse 中,它之所以有效,是因为它会在您保存类时自动编译它们。
笔记: -
如果您的类在某些包下,请使用以下命令编译您的 java 文件: - javac -d . A.java
。这将为包名称创建一个文件夹,并自动将类文件放入该文件夹中。然后你的 B 班就可以找到它
于 2012-10-30T13:02:30.047 回答