从简单程序看java运行错误
问HelloWorld问题的人太多了,往往都是从“问最简单的问题”开始。其实回想起来,我就是从这个阶段走过来的。说“你好”真的是最简单的问题吗?
首先我们假设我们的平台是Windows+JDK(类似于Linux环境)。这个环境是相当普遍的、基本的和入门的。确保JDK安装正确。下一步是在教程中仔细键入HelloWorld源代码,保存它,然后编译它。问题来了:
*错误1:
' javac '不是内部或外部命令,也不是可运行的程序或批处理文件。
(javac:command not found)
原因是没有设置好环境变量path。
在win98下的autoexce.bat中添加path=%path%;C: \ JDK1.2 \ bin
在Win2000下,控制面板->系统->高级->环境变量->系统变量...看到了吗?双击Path并在其后面添加c:\jdk1.2\bin。
当然,我们假设JDK安装在c:\jdk1.2目录下
好的,再试一次!Javahelloworld
*错误2:
helloworld是无效的选项或参数。
拜托,专业点。Java源程序必须另存为。java文件等等。编译的时候要写java。
好的,贾瓦茨HelloWorld.java(这次应该做吗?)
*错误3:
helloworld.java: 1:公共类helloworld必须在名为
“hello world . Java”的文件中定义。public class helloworld {
问题是你的类名和文件名不一致。(谁说的?很明显别人也是这么写的。)好吧。准确地说,一个Java源程序中可以定义多个类。但是,只能有一个具有public属性的类,并且应该与文件名一致。同样,main方法必须放在这个公共类中,以便java(运行)这个类。还有一点,Java语言是严格区分大小写的,新手要注意。如上例所示,helloworld和HelloWorld被认为是不同的,所以...哦...好了,改了,嘻嘻...
贾瓦茨·HelloWorld.java
...(咦,怎么什么都没有?)//晕这是编译通过了!看看还有没有另一个HelloWorld.class?
java HelloWorld如书中所教(不是java HelloWorld.class哟,因为“.”在j2ee规范中java指令指的是路径的意思。如果是java HelloWorld.class,那么系统会在HelloWorld目录中寻找class.class文件,当然这是不可能的)。
*错误4:
线程“main”出现异常Java . lang . noclassdeffunderror:Hello World
呵呵,好吧,是类路径问题。实际上,类路径是Java中的一个概念,涉及到编译过程。Classpath就是指出在哪里可以找到你需要的类。就这么简单。因为我们的HelloWorld不使用其他类(java.lang包中没有),所以编译时没有遇到这个问题。在运行时,有必要指出你的类在哪里。作为一种解决方案,您可以使用以下命令运行它:
Java-class path . hello world
"。代表当前目录。当然这个有点麻烦(是“太麻烦”!),我们可以在环境变量中设置默认的类路径。方法就像上面设置路径一样。将类路径设置为:类路径=。;c:\ JDK 1.2 \ lib \ dt . jar;c:\jdk1.2\lib\tools.jar后面的两个建议也可供以后开发使用。
java-class path . hello world(再出来就不学Java了)
*错误5:
线程“main”中出现异常Java . lang . nosuchmethod Error:main
(//crash)不,坚持住。看看你的代码。问题在于main方法的定义。写的地方对吗?是不是这样写的:
public static void main(string args[]){//不要一个字不好。先别问为什么...对,包括case!
Java-class path . hello world(已辞职!你好,世界!
(晕!最后...)
欢迎来到Java世界!所以,不能运行HelloWorld真的不是“最简单的问题”。
附:HelloWorld.java
//hello world . Java
公共类hello world {
公共静态void main(string args[]){
system . out . println(" hello world!");
}
}
0条评论