Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Error pada saat compile source TestKoneksi

alo....tmn2.

gw udah setclasspath untuk connector mysql itu, cuma kmrn gw ada ambil source dari forum ini jg untuk tes koneksi ke my sql tapi muncul pesan error :


exception in thread "main" java.lang.NoClassDefFoundError: TesKoneksi

berikut ini potongan source code nya :

import java.sql.*;

public class TesKoneksi {

String url = "jdbc:mysql://localhost/test"; // sesuaikan dengan nama database.
String user = "mysql"; // sesuaikan dengan nama user.
String pass = "sharingan"; // sesuaikan dengan password.
Connection conn;

public TesKoneksi() {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException cnfe) {
System.err.println(cnfe.getMessage());
}

try {
conn = DriverManager.getConnection(url, user, pass);
conn.createStatement();

System.out.println("Anda telah terhubung");
} catch (SQLException se) {
System.err.println(se.getMessage());
}
}

public static void main(String[] args) {
new TesKoneksi();
}
}


tolong kasih tau yah, ini error nya kenapa? and cara perbaikinya gimana?


thx....

Comments

  • program koneksinya udah gak ada masalah.

    kemungkinan problemnya ada 2.

    1. cara compilenya gak bener, dan saya lihat itu error runtime, ini bisa disebabkan karena program belum dicompile tapi sudah dijalankan(btw bisa liat cara compilenya?).

    2. setting classpath jdk ke file tools.jar.
  • untuk compilenya gw pake textpad, biasanya compile dengan menggunakan CTRL + 1 dan runningnya dengan menggunakan CTRL + 2

    nah yang kedua itu setting classpathnya gimana? apakah harus di environtment variable lg? atau lewat command prompt?
  • ok compile dan run udah bener yach, berarti mesti setting classpath ke tools.jar

    file tools.jar ini ada di folder lib under folder instalasi jdk om Firu.

    setting classpathnya sama seperti setting classpath jdbc driver.

    nanti dipisahkan dengan ;%CLASSPATH%;
    di sini mysql connectior;%CLASSPATH%;di sini tools.jar

    setting classpath ke tools.jar biasanya diperlukan bila kita menggunakan package selain java.lang. Selain package java.lang kan kita mesti import, seperti halnya program om Firu yg import java.sql.

    Skenario di atas diperlukan bila memang kita compile n running menggunakan text editor biasa seperti Textpad, lain ceritanya kalo kita pake IDE seperti netbeans, eclipse atau intelliJ, karena semua sudah diurus oleh IDE tsb.

    Semoga membantu ;)
  • Oh... Jadi saya harus buat lagi classpath di environment variable dengan path seperti ini yah:

    variable name : ClassPath Java
    variable Value : C:\Program Files\Java\jdk1.6.0_01\lib\mysql-connector-java-5.1.6-bin.jar;%CLASSPATH%;tools.jar

    kalo saya setting seperti itu, bentrok gak yah dengan class path yang sudah saya buat sebelumnya?

    nama variable yang sebelumnya Classpath saja.

    tapi begitu saya cek dengan
    echo %CLASSPATH Java%

    hasilnya yg muncul malah seperti ini:
    C:\Program Files\Java\jdk1.6.0_01\lib\mysql-connector-java-5.1.6-bin.jar;c:\program files\java\jdk1.6.0_01\lib\mysql-connector-java-5.1.6-bin.jar;%CLASSPATH%;tools.jar

    apakah set classpath untuk tools.jarnya sudah benar?

    untuk mas newuser, thx bgt yah buat replynya, Jadi jangan bosen yah jawab pertanyaan saya.
  • variable name : ClassPath Java

    itu seharusnya

    variable name : CLASSPATH

    trus tanda % dan titik koma dimaksudkan agar 1 classpath dengan classpath yg lain tidak dioverwrite.

    Santai om, dulu saya waktu pertama belajar java juga gitu try n error lah ;)
    saya salut ama om mo belajar cara manual dulu, gak langsung pake IDE,
    dulu juga kebanyakan orang belajar begitu, tapi skrg jarang bgt yg mo belajar manual2 begini hehehe, maunya instant pake IDE, jadi gak tau dasarnya dech.

    GBU
  • Jadi harusnya di environmentnya saya cukup buat 1 CLASSPATH seperti ini :

    Variable Name : CLASSPATH
    Variable Value : C:\Program Files\Java\jdk1.6.0_01\lib\mysql-connector-java-5.1.6-bin.jar;%CLASSPATH%;C:\Program Files\Java\jdk1.6.0_01\lib\tools.jar

    setelah saya coba seperti diatas, saya masih menemukan error yang sama pada saat compile yaitu :

    exception in thread "main" java.lang.NoClassDefFoundError: TesKoneksi

    potongan codingnya masih sama dengan yang kmrn, apakah saya ada salah mengetikkan nama database dan user namenya?

    saya cek status di mysql command line client mendapatkan informasi seperti ini :

    connection id : 7
    current database : test
    current user : root@localhost
    SSL : not in use
    Using delimiter : ;
    Server Version : 5.0.51a-community-nt MySQL Community Edition (GPL)
    Protocol Version : 10
    Connection : localhost via TCP/IP
    Server characterset : utf8
    DB characterset : utf8
    Client characterset : utf8
    Conn. characterset : utf8
    TCP port : 3306
    uptime : 1 hour 16 min 51 sec

    coba pak newuser cek apakah ada kesalahan di potongan coding nya?



    di tunggu balasannya.


    makasih yah..... :)
  • sudah saya tes om, udah ok codenya.
    Bila saya mengetikkan user atau password yg salah, errornya akan seperti :
    Access denied for user 'mysql'@'localhost' (using password: YES).

    Saya sesuaikan code om dengan user dan password mysql di kompie saya, hasilnya:
    Anda telah terhubung

    coba om compile dan run dari console,
    compile :
    javac TesKoneksi,java

    run:
    java TesKoneksi

    nanti pas compile hasilnya apa dan run hasilnya apa, jadi penasaran saya
  • Nah sekarang saya coba running program helloWorld nya aja gak bisa, pesan error nya sama :

    exception in thread "main" java.lang.NoClassDefFoundError: helloWorld

    potongan codenya :

    public class helloWorld
    {

    public static void main(String args[])
    {
    System.out.println("Hello World");
    }
    }

    ini error muncul apa karena saya buat CLASSPATH yang di environment itu yah?di compile sih sukses tapi pada saat running program nya muncul pesan error itu, saya coba running di textpad atau di command prompt pun pesan errornya sama seperti itu.

    gimana cara perbaikinya yah? apa saya harus delete variable yang ada di environment itu?Ternyata Java itu agak rumit jg yah....

    tapi saya gak bakal nyerah..... :D

    mohon bantuannya yah. Thx
  • wew program hello world aja gak jalan, berarti om belum setting path ke folder bin instalasi jdknya?

    biasanya om ketik di console untuk ngetes : java -version
    kalo word java don't recognize, yach berarti emang belum setting path java :P

    Di environment variable ada variable path, biasanya windows dah ada default pathnya, so tambahkan saja, path java disitu, jgn lupa dipisahkan dengan ;%PATH%;

    Kira2 seperti ini :

    Variable Name : Path
    Variable Value : %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem ;%PATH%;C:\Program Files\Java\jdk1.6.0\bin;%PATH%;;


    catatan : yg SystemRoot itu kepunyaan windows, yg path ke java om dah bisa tebak sendiri.
    Setelah setting path, om restart kompie dulu, terus silahkan compile dan run program hello worldnya, mudah2an gak ada masalah lagi.

    Di kompie saya normal2 aja, biarpun saya skrg pake IDE netbeans tapi kebiasaan saya abis intall java pasti langsung setting path dan classpath ke environment variable, agar saat tes di console udah gak masalah lagi, ini juga yg bikin saya bisa punya multiple jdk di kompie saya ;)
  • saya sudah test dengan cara yang kamu kasih tahu dengan mengetikan java -version di command prompt dan ternyata java nya sudah di kenali.

    yang saya bingung setelah saya ikuti cara kamu yang nambahin path javanya di windows environmentnya, masih saja muncul pesan error yang sama pada saat running helloWorld.java nya.

    Karena saya penasaran, saya coba delete environment variable yang untuk connector mySQL tersebut dan restart kompie saya, kemudan saya coba compile ulang dan running ternyata berhasil.

    Apakah variable CLASSPATH yang saya buat untuk connector mysql nya itu bentrok dengan classpath yang di gunakan untuk running java nya?Atau memang saya yang salah dalam setting classpath untuk connector mySQL nya?
  • hmm gitu yach, gak ngerti juga kalo begitu, btw ini setting classpath yang ada dikompie saya :

    Variable Value : E:\Program Files\Java\jdk1.6.0_05\lib\tools.jar;%CLASSPATH%;E:\Program Files\library\jdbc-mysql-5.1.5\mysql-connector-java-5.1.5-bin.jar;%CLASSPATH%;

    and it's fine
  • Saya coba edit variable value untuk CLASSPATH nya sesuai dengan yg kamu kasih tahu, dan ternyata berhasil, kayaknya error nya terjadi karena saya kurang menambahkan ;%CLASSPATH%; di akhir Classpathnya.

    Skrg udah bisa, makasih banget yah. udah dibantuin.... :)
  • wach dah bisa yach, hehehe, mudah2an gak kapok n tetep semangat belajarnya.
    Masih banyak yg perlu dipelajarin, asalkan fokus lama2 bisa kok.

    just info tuk belajar java :

    1. Java fundamental
    2. I/O dan Networking
    3. JDBC
    4. a. kalo web belajar Servlet, JSP
    4. b. Kalo desktop belajar swing
    4. c. Kalo mobile belajar Java ME(MIDP).

    Selamat belajar :)
  • Wah kalo kapok sih enggak, tapi ntar saya coba belajar sesuai dengan tahapan yang udah kamu kasih tau, biar mantap....

    ntar kalo saya stuck lagi jangan bosen jawab pertanyaan saya yah...

    :)
  • kalo pingin g perlu setting classpath di system, maka harus di setting saat eksekusi
    java -classpath pathrelative/ke/file/.jar;./ JavaClass
  • kalo kaya gini "COULD NOT FIND OR LOAD MAIN CLASS TesKoneksi"
    gimana gan cara ngatasinya?
Sign In or Register to comment.