在Eclipse中编写简单的Java Application时,会自动编译这些文件并将它们存储在项目根文件夹的bin /文件夹中。
现在如果我导航到/ bin文件夹和包含.class文件的文件夹,我想通过下面的java命令运行,我收到以下错误 - :
java A. 错误:找不到或加载主类A
A类:
package assurance;
public class A {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
虽然A类有一个main方法,但是当我右键单击该文件并执行Run As Java Application时运行正常。但它不会像java命令那样运行。
为什么会这样?
更新
尝试使用以下命令 - :
java -cp "A.class" assurance.A
java -cp "A" assurance.A
java -cp "*" assurance.A
答案 0 :(得分:2)
它适用于Eclipse,因为Eclipse只使用正确的-cp和正确的命令运行它:)
使用以下命令运行代码:
java -cp "./" assurance.A
(""
用于某些奇怪的cmd解释器,例如Windows XP)
从“默认包”目录(顶级包目录)运行命令非常重要。
Java将包名称(assurance
)解释为类文件的目录路径。想象一下,如果它用.
替换/
并添加.class
扩展名
(assurance.A
=> ./assurance/A.class
)
此处有更多详情:http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html