隨筆-49  評(píng)論-67  文章-27  trackbacks-0

                  前天給學(xué)生上課,想給大家演示一個(gè)JDBC的小程序的調(diào)試過程。開始一切都十分順利,通過修改拼寫錯(cuò)誤和語(yǔ)法錯(cuò)誤,程序可以正常編譯了。下面的步驟就是運(yùn)行程序顯示結(jié)果了。

                 可是當(dāng)我在命令行里面鍵入:
                         java CreateStudent
          時(shí),系統(tǒng)彈出如下錯(cuò)誤提示:
                         Exception in thread "main" java.lang.NoClassDefFoundError: CreateStudent
          當(dāng)時(shí)我找了很多地方都沒有發(fā)現(xiàn)問題。

                 后來等我回來,在網(wǎng)上找了一些資料才發(fā)現(xiàn),原來需要在CLASSPATH中加入“.”,程序才能正常運(yùn)行。或者在運(yùn)行時(shí)加入?yún)?shù)-cp或-classpath,如:
                         java -classpath . CreateStudent
          這樣問題就解決了!

          posted on 2005-10-21 09:21 思考 閱讀(59171) 評(píng)論(19)  編輯  收藏

          評(píng)論:
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2005-12-12 10:37 | amateurlee
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-08-08 16:20 | 蔣維
          在網(wǎng)上看了好久才看到你這里來,一個(gè)“.”,害死我了。謝謝啊。
          協(xié)會(huì)還出什么問題,我先來這里看看,呵呵。  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-09-15 13:07 | www
          我正在調(diào)試一個(gè)包,編譯通過啦,但用java 命令時(shí)出現(xiàn)了這個(gè)問題:
          Exception in thread "main" java.lang.NoClassDefFoundError: UsingClass (wrong name: packageTwo/UsingClass)

          我用了樓主的方法試了下,行不通,請(qǐng)給我指點(diǎn)一下。  回復(fù)  更多評(píng)論
            
          # 關(guān)于排序的問題.請(qǐng)指教 2006-10-14 12:33 | 莫大
          public class Arraysort1
          {public static void main(String[] args)
          { Array1 s=new Array1();

          int a[]={2,5,6,1,3,7,9,8,0,4};
          int i,j;
          for( i=0;i<a.length-1;i++)
          {for(j=i;j<a.length;j++)
          {s.sort(a[i],a[j]); }

          }



          System.out.print("排序后的數(shù)組為:");
          for(j=0;j<a.length;j++)
          System.out.print(a[j]+" ");
          }

          }
          class Array1
          {
          public int sort(int s1,int s2)
          { if(s1>s2)
          {s1=s1+s2;s2=s1-s2;s1=s1-s2;}
          return 1;
          }

          }
          我看不出錯(cuò)誤,但它偏就錯(cuò)了??為什么???  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-10-17 09:39 | 苦啊
          請(qǐng)說詳細(xì)一點(diǎn),你所謂的一個(gè)"."加在CLASSPATH的哪個(gè)位置,還有那一個(gè)"."有什么作用呢...  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-10-25 17:38 | 游客
          @莫大

          public int sort(int s1,int s2)
          { if(s1>s2)
          {s1=s1+s2;s2=s1-s2;s1=s1-s2;}
          return 1;
          }
          返回值有問題,s1,s2只是a[i],a[j]的引用,如果不返回值,它們?cè)瓉淼闹挡粫?huì)改變吧,我是這樣想的,建議方法和數(shù)據(jù)放在同一個(gè)類里。

          據(jù)說還可以把兩個(gè)參數(shù)封裝到一個(gè)類里也可以,可以試試  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-11-01 11:39 | sku11
          請(qǐng)問那個(gè)點(diǎn)加在哪?
          謝謝  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-11-13 20:37 | 盧偉
          謝謝!找了很久.  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-11-13 23:37 | AAA
          @amateurlee
          @游客
            回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-11-15 11:19 | 安大計(jì)算機(jī)——趙勇
          謝謝老師,我苦找答案一上午,終于找到了這里
          請(qǐng)老師沒事來我的博客看看給點(diǎn)指導(dǎo):
          http://jink2005.blog.sohu.com/  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2006-11-19 16:10 | lily[匿名]
          這是我拷的一個(gè)例子,在編譯的時(shí)候可以通過,但在執(zhí)行的時(shí)候去總出現(xiàn)先您那樣的錯(cuò)誤。不知如何解決。我是一個(gè)初學(xué)者還請(qǐng)您多多指點(diǎn)。

          package stuman;

          import java.io.*;
          import java.sql.*;

          public class sqlBean{///

          public Connection conn=null;

          public ResultSet rs=null;

          private String DatabaseDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";

          private String DatabaseConnStr="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=educationi,'edu','edu'";
          private String strcon = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=educationi";
          private String strusr = "edu";
          private String stupwd = "edu";
          public void setDatabaseDriver(String Driver){
          this.DatabaseDriver=Driver;
          }
          public String getDatabaseDriver(){
          return (this.DatabaseDriver);
          }

          public void setDatabaseConnStr(String ConnStr){
          this.DatabaseConnStr=ConnStr;
          }
          public String getDatabaseConnStr(){
          return (this.DatabaseConnStr);
          }

          public sqlBean(){/////構(gòu)造函數(shù)
          try{


          Class.forName(DatabaseDriver);
          }
          catch(java.lang.ClassNotFoundException e){
          System.err.println("加載驅(qū)動(dòng)器有錯(cuò)誤:"+e.getMessage( ));
          System.out.print("執(zhí)行插入有錯(cuò)誤:"+e.getMessage());//輸出到客戶端
          }
          }


          public int executeInsert(String sql){
          int num=0;
          try{
          conn = DriverManager.getConnection(strcon,strusr,stupwd);

          Statement stmt=conn.createStatement( );
          num=stmt.executeUpdate(sql);
          }
          catch(SQLException ex){
          System.err.println("執(zhí)行插入有錯(cuò)誤:"+ex.getMessage() );
          System.out.print("執(zhí)行插入有錯(cuò)誤:"+ex.getMessage());//輸出到客戶端
          }

          CloseDataBase();
          return num;
          }
          // display data

          public ResultSet executeQuery(String sql){
          rs=null;
          try{
          conn = DriverManager.getConnection(strcon,strusr,stupwd);

          Statement stmt=conn.createStatement( );
          rs=stmt.executeQuery(sql);
          }
          catch(SQLException ex){
          System.err.println("執(zhí)行查詢有錯(cuò)誤:"+ex.getMessage() );
          System.out.print("執(zhí)行查詢有錯(cuò)誤:"+ex.getMessage()); //輸出到客戶端
          }

          return rs;
          }
          // delete data
          public int executeDelete(String sql){
          int num=0;
          try{

          conn = DriverManager.getConnection(strcon,strusr,stupwd);

          Statement stmt=conn.createStatement( );
          num=stmt.executeUpdate(sql);
          }
          catch(SQLException ex){
          System.err.println("執(zhí)行刪除有錯(cuò)誤:"+ex.getMessage() );
          System.out.print("執(zhí)行刪除有錯(cuò)誤:"+ex.getMessage()); //輸出到客戶端
          }
          CloseDataBase();
          return num;
          }
          //////////////////
          public void CloseDataBase(){
          try{
          conn.close();
          }
          catch(Exception end){
          System.err.println("執(zhí)行關(guān)閉Connection對(duì)象有錯(cuò)誤:"+end.getMessage( ) );
          System.out.print("執(zhí)行執(zhí)行關(guān)閉Connection對(duì)象有錯(cuò)誤:有錯(cuò)誤:"+end.getMessage()); //輸出到客戶端
          }
          }
          }
            回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2007-10-30 12:29 | coffeemars
          我在xp下安裝文件的時(shí)候出了這個(gè)錯(cuò),用同樣的安裝文件在別的機(jī)子上沒有問題,請(qǐng)教各位大蝦怎么解決?謝謝  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2007-12-16 09:18 | 朱遠(yuǎn)翔-Apusic技術(shù)支持工程師
          老師,你每次都只說明解決方法,但是沒有解釋為什么這樣可以。學(xué)生只學(xué)到所以然,但是不知其然,以后碰到同樣的問題仍然無法做通。  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2008-02-18 18:33 | 石康志
          . 代表的是文件的所在目錄,如果你寫的代碼有兩個(gè)以上的類,javac的時(shí)候就會(huì)產(chǎn)生不止一個(gè)文件,如果沒有.的話,就會(huì)找不到這些文件。  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題[未登錄] 2008-06-27 09:59 | wml
          我用的是MyEclipse連接SQL數(shù)據(jù)庫(kù)時(shí)出現(xiàn)的這個(gè)錯(cuò)誤,請(qǐng)老師指點(diǎn)  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題 2008-10-23 14:17 | 李昱鑫
          我也是用myeclipse連數(shù)據(jù)庫(kù)時(shí)出現(xiàn)了這個(gè)錯(cuò)誤,請(qǐng)高手指點(diǎn)
            回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題[未登錄] 2009-04-19 16:33 | yy
          我寫了一個(gè)類,然后寫另一個(gè)類來調(diào)用這個(gè)類時(shí)沒問題。但是當(dāng)在Jsp或Servlet中調(diào)用這個(gè)類時(shí),就提示java.lang.NoClassDefFoundError,請(qǐng)問該怎么設(shè)置才好?  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題[未登錄] 2011-01-08 22:25 | 111
          連這個(gè)都不知道 還教人,你到監(jiān)獄教犯人?  回復(fù)  更多評(píng)論
            
          # re: "java.lang.NoClassDefFoundError"錯(cuò)誤——一個(gè)關(guān)于classpath設(shè)置的問題[未登錄] 2011-06-30 09:58 |
          @111
          我操你嗎 我真想媽你。  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 白银市| 鄂托克前旗| 威海市| 德清县| 休宁县| 呼伦贝尔市| 长丰县| 夏邑县| 上饶市| 丘北县| 富平县| 东乡县| 麻栗坡县| 温泉县| 富锦市| 岳池县| 益阳市| 宜君县| 札达县| 嘉黎县| 祁阳县| 修武县| 调兵山市| 台南市| 专栏| 保山市| 民县| 萝北县| 临桂县| 安平县| 泸西县| 右玉县| 金乡县| 蒙自县| 车致| 杨浦区| 五莲县| 理塘县| 凤庆县| 通海县| 景泰县|