c:\j2sedk1.4.2_10
c:\Welcome.java
Welcome.java能编译通过
在运行时我这样
C:\Documents and Settings\sean>java c:\Welcome
就出现
Exception in thread "main" java.lang.NoClassDefFoundError: c:\Welcome
但是我改成
C:\Documents and Settings\sean>cd c:\
C:\>java Welcome
就可以正确运行
这是为什么??
c:\Welcome.java
Welcome.java能编译通过
在运行时我这样
C:\Documents and Settings\sean>java c:\Welcome
就出现
Exception in thread "main" java.lang.NoClassDefFoundError: c:\Welcome
但是我改成
C:\Documents and Settings\sean>cd c:\
C:\>java Welcome
就可以正确运行
这是为什么??
运行:java Welcome
JAVA XXX, 这个XXX一定要是文件名(如果是包内程序,还要加上包名的),同时也是类名啊!
你那样 C:\XXX 就不是类名了啊 !
比如这样
C:\Documents and Settings\sean>javac c:\Welcome.java
编译能正常通过的
但为什么到了运行就一定要在同一个目录下呢
后面加.class还是不行的
C:\Documents and Settings\sean>java c:\Welcome.class
Exception in thread "main" java.lang.NoClassDefFoundError: c:\Welcome/class
javac 是执行,你的程序又不是在包里面,怎么能这样执行,何况如果是包的话应该用"."
例如 javac com.sun.HelloWorld
C:\Documents and Settings\sean>java -cp c:\; Welcome
path设置为c:\j2sdk1.3.1_16\bin.
编译"HelloWorl.java"出现javac' 不是内部或外部命令,也不是可运行的程序或批处理文件
Path=%JAVA_HOME%\bin;...
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
楼上的path应该是对的阿
你试试直接运行system32下的cmd.exe
编译可以指定目录,运行不能指定目录。(当然也可以利用OPTION参数来指定目录,但是要和文件名即类名有空格相隔)
其实很简单。你只要在命令提示符下面输入一个JAVA,回车后就可以看到完整的命令格式了。JAVAC也是一样。
java 是编译,你带路径当然可以。
javac 是执行,你的程序又不是在包里面,怎么能这样执行,何况如果是包的话应该用"."
例如 javac com.sun.HelloWorld
javac 是编译
java 是执行,
ps搂主注意path 和classpath的配置