Windows 2000中如何配置JDK

發表于:2007-07-01來源:作者:點擊數: 標簽:
Java 初學者往往對如何配置Java 開發 環境感到迷惑,論壇上也有很多朋友在詢問關于JDK配置的問題,特別是配置之后,編譯java文件的時候,總是碰到這樣一個問題,錯誤提示為: Microsoft Windows 2000 [Version 5.00.2195] (C) 版權所有 1985-1998 Microsoft
  Java初學者往往對如何配置Java開發環境感到迷惑,論壇上也有很多朋友在詢問關于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。在我的電腦-》屬性-》高級-》環境變量 中,分別添加這三個變量,他們的值分別為:

  名稱=值

  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.aclearcase/" target="_blank" >ccess0(URLClassLoader.java:56)
  at java.net.URLClassLoader.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 ,這樣我們就可以看到運行結果了。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97