我是Java的初学者。最近我在Mac中使用Eclipse来构建一个项目,该项目在工作区的bin文件夹中输出.class:
当我双击Mac PC的bin中的Main.Class文件时,我可以执行JFrame appl'n。
但是,当我将bin文件夹中的所有内容复制到Window PC并尝试在命令下运行时,它只是无法执行它:
使用的命令提示符:
C:\Program Files\Java\jre6\bin>java c:\temp\bin\Main.class
错误消息:
Exeception in thread "main" java.land.NoClassDefFindError: c:\temp\bin\Main/class ...
Could not find the main class...Program will exit.
执行程序时我错过了哪些步骤?
关于Java Applet的另一个问题...如果我允许新客户端的PC运行Java Applet,那么每当有新客户端时,我必须在客户端的PC上编译java项目才能运行小程序?
答案 0 :(得分:3)
您无需指定Java应用程序的扩展名,即删除.class
。
试试这个:java c:\temp\bin\Main
此外,如果您打包了java文件,那么它必须先在包中然后运行。 比如说你已经宣布你的班级为
package com.my.app;
public class Main{
}
然后您必须将类文件移动到com/my/app
文件夹,然后以
java c:\temp\bin\com.my.app.Main
答案 1 :(得分:0)
Java
命令不包括classpath
中的当前目录。请按照以下步骤进行操作
执行java -cp . Main
我可以看到目录中有三个类(Main.class
MianWindow.class
PaintPanel.class
),您必须将该目录设置为classpath