代码如下(一字不落):
// Fig 24.2: Welcome1.java
// A first program in Javapublic class Welcome1 {
   public static void main ( String args[] )
   {
    System.out.println ("welcom to java world!");
   }
}

解决方案 »

  1.   

    java welcome1->java Welcome1classpath
      

  2.   

    please set correct classpath
      

  3.   

    java -cp ".\;%CLASSPATH%" Welcome1
      

  4.   

    在你的环境变量CLASSPATH里加上"./"
      

  5.   

    注意你的文件名的大小写, welcome1.java->Welcome1.java
      

  6.   

    程序没有问题,最简单的办法加入classpath如果,不想加,就java -cp ".\;%CLASSPATH%" Welcome1
      

  7.   

    "用java welcome1执行"->java Welcome1
      

  8.   

    不想改CLASSPATH就把程序般到JDK/BIN下.
      

  9.   

    java -classpath . Welcome 
    我遇过,但即使改也改不过来。暂时可以用上述方法解决问题。
      

  10.   

    "用java welcome1执行"->java Welcome1
      

  11.   

      JDK配置问题   
      看到论坛上那么多人问关于JDK配置的问题,特别是配置之后,编译java文件的时候,总是碰到这样一个问题,错误提示为:
    ================================================================================================= 
    Microsoft Windows 2000 [Version 5.00.2195] 
    (C) 版权所有 1985-1998 Microsoft Corp. 
    C:\>javac HelloWorld.java C:\>java HelloWorld 
    Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld C:\> 
    以上为出错信息 
    源程序如下: 
    class HelloWorld { 
    public static void main(String[] args) { 
    // Display "Hello World!" 
    System.out.println("Hello World!"); 

    } 编译通过 运行怎么就Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld???????/ 
    =================================================================================================== 对于以上的问题,大家一贯的解决方法为,把HelloWorld.java文件所在目录的路径加入参数classpath中,如:set classpath=%classpath%;.;……(这里要注意其中的“.;”,一会儿我们做个试验看看到底是什么意思)。我试过了,好像不行,不知道是不是我没有配置好。至于给这个问题解答的网友有没有具体实践过,我不得而知。于是,我自己做了一次尝试。
    我使用Win2000+JDK1.30,在java.sun.com下载j2sdk1_3_0-win.exe,然后点击安装,安装系统默认的路径,安装到c:盘,即:c:\jdk130。安装完成需要配置环境,这涉及到三个参数:path、classpath、java_home。在我的电脑-》属性-》高级-》环境变量 中,分别添加这三个变量,他们的值分别为:name value 
    java_home c:\jdk130 
    classpath .;C:\jdk13\lib\tools.jar;C:\jdk13\lib\dt.jar;C:\jdk13\bin; 
    path C:\jdk13\bin; 然后确定就可以了。注解:classpath用于指明所有用于引用的类所在的目录,它允许用户把自己的类放在不同的目录中,但应该让JDK编译工具知道它们在那里。例如:set classpath=.;C:\jdk13\lib\tools.jar;C:\jdk13\lib\dt.jar;C:\jdk13\bin;命令中的第一个圆点指明classpath当前的工作目录。这个圆点非常有用,当不愿意输入完整的当前目录路径时,可以用它来代替,java程序允许这么做。在d:新建子目录java,编写一个java文件,名字叫Hello.java,进入dos模式,进入到目录d:\java,然后敲入javac Hello.java,编译通过。然后可以使用java Hello运行生成的class文件,没有问题,结果正常输出。若是我们在Hello.java文件中的第一句加入:package hello; ,然后编译,没有出现错误,运行时我们会看到如下错误信息:
    Exception in thread "main" java.lang.NoClassDefFoundError: Hello (wrong
    hello/Hello)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.
    1)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313) 这时,我们在编译的时候,应该这样:javac -d . Hello.java
    这样会在当前目录下产生一个新的子目录,目录名字就是hello。
    我们可以用一下两种方法运行编译好的文件,在当前目录下,敲入:java hello/Hello或者java hello.Hello ,这样我们就可以看到运行结果了。这里有个问题:若是进入目录hello中,然后敲入:java Hello 运行,则会出现错误:Exception in thread "main" java.lang.NoClassDefFoundError: Hello(wrong
    hello/Hello)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.
    1)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313) 和上面的错误信息一摸一样,不知道该如何解决?大家帮忙看看,为什么进入目录hello中之后,就不能运行编译好的class文件。
       
          
      

  12.   

    java对大小写很敏感的,所以,你的.java文件名,以及在写命令的时候都要注意。一旦出现大小写有偏差的情况,它自然就报找不到类的错误了,还有就是要注意路径,每个工具的执行都会有一个默认路径的,在此基础上写你的文件路径,如果路径有错的话,也找不到类。
      

  13.   

    注意大小写,你的错误是出在大小写上了,因为JAVA是对大小写敏感的,所以一定要保证你的类名大小写正确,源文件无所谓。
    运行时,你的类名错了,所以没有找到你编译所得的类。