[ velimzo @ 31.01.2011. 18:06 ] @
| Pokusavam da povezem javu i mysql koristeci MySQL Connector/J. Sve vreme dobijam gresku, i ne znam gde gresim.
Koristim:
XP operativni sistem,
jdk1.6.0_23,
MySQL Community Server 5.5.8
Jar file od jconnectora je sacuvan na sledecoj lokaciji:
C:\Program Files\mysql-connector-java-5.1.14\mysql-connector-java-5.1.14-bin.jar
U komand promptu sam podesio classpath na sledeci nacin:
set CLASSPATH="C:\Program Files\mysql-connector-java-5.1.14\mysql-connector-java-5.1.14-bin.jar;"
Kod koji sam koristio za testiranje je sledeci:
Code: import java.sql.*;
public class Connect
{
public static void main (String[] args)
{
Connection conn = null;
try
{
String userName = "root";
String password = "password";
String url = "jdbc:mysql://localhost/test";
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
conn = DriverManager.getConnection (url, userName, password);
System.out.println ("Database connection established");
}
catch (Exception e)
{
System.err.println ("Cannot connect to database server");
}
finally
{
if (conn != null)
{
try
{
conn.close ();
System.out.println ("Database connection terminated");
}
catch (Exception e) { /* ignore close errors */ }
}
}
}
}
Program se bez problema kompajlira sa komandom: javac Connect.java
Greska koja mi se stalno pojavljuje kada pokusam da izvrsim: java Connect
je sledeca:
Exception in thread "main" java.lang.NoClassDefFoundError: Connect
Caused by: java.lang.ClassNotFoundException: Connect
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Connect. Program will exit.
Ono sto ja ocekujem jeste da mi se pojavi: Database connection established
Izgubio sam dosta vremena pokusavajuc ovo da resim. Unapred sam vam zahvalan na svakoj pomoci. |
[ biske86 @ 31.01.2011. 18:37 ] @
Probaj da skineš ; na kraju CLASSPATH.
[ velimzo @ 31.01.2011. 19:06 ] @
pokusao sam, al je rezultat isti...
[ dule_ns @ 01.02.2011. 08:33 ] @
Jre ne može da ti pronađe klasu Connect. Odakle pokrećeš java Connect. Da li se nalaziš u istom folderu u kom ti se nalazi i .class fajl.
[ velimzo @ 01.02.2011. 12:20 ] @
Problem je resen, al ne na onaj nacin kako sam zamislio. Nije samo dovoljno da se nalazim u folderu gde mi je clasa Connect.class, nego moram da i u classpath-u podesim tekuci folder. To jest, moram staviti tacku iza tacka-zarez. (;.)
Prilikom kompajliranja programa postavio sam classpath, pa je to sad izgledalo ovako:
javac -classpath "C:\Program Files\mysql-connector-java-5.1.14\mysql-connector-java-5.1.14-bin.jar;." Connect.java
A prilikom izvrsavanja programa morao sam isto tako da postavim classpath, pa je to izgledalo ovako:
java -classpath "C:\Program Files\mysql-connector-java-5.1.14\mysql-connector-java-5.1.14-bin.jar;." Connect
U svakom slucaju cela stvar je proradila, al mi nije jasno zasto prilikom ovakvog podesavanja classpath-a ne radi. To jest ovako:
set CLASSPATH="C:\Program Files\mysql-connector-java-5.1.14\mysql-connector-java-5.1.14-bin.jar;."
Ako je nekom jasno, moze da objasni. Posto je mnogo jednostavnije izvrsavati program i kompajlirati, bez stalnog naznacavanja classpath-a.
U svakom slucaju hvala vam svima na pomoci.
[ bantu @ 01.02.2011. 16:15 ] @
Zamisli kako ce ti tek biti kad budes imao na desetine klasa i paketa i ko zna cega jos. Zato koristi ant, mnogo olaksava posao.
[ velimzo @ 02.02.2011. 12:11 ] @
@bantu
Vazi, vec sam skinuo ant.
Ako neko ima neki dobar ant tutorijal, moze da okaci link.
[ biske86 @ 02.02.2011. 12:46 ] @
I ja sam zainteresovan za neki dobar tutorijal za ant. Nikad ga nisam koristio. U čemu je glavna fora kod njega? U kom smislu olaksava posao?
[ iMac @ 02.02.2011. 21:20 ] @
Si probao da koristis Eclipse umesto pukog kompajliranja iz konzole?
[ bantu @ 02.02.2011. 21:30 ] @
[ biske86 @ 02.02.2011. 21:53 ] @
Ja sam to znao i sam, pitah za neki tutorijal koji ste vi probali a da je bio jasan i jednostavan. Ali hvala na linku..
[ bantu @ 02.02.2011. 22:33 ] @
Pa ovaj sto sam naveo je poprilicno jasan.
Evo ti jedan skroz jednostavan demo projekat sa ant-om. Kada instaliras ant udji u folder sa projektom i otkucaj ant to ce pokrenuti build skriptu.
Na ovom primjeru mozes da vidis kako se uz pomoc anta ciste stari falovi, buildaju novi, pravi jar arhiva i pokrece sam program.
Jako je jednostavno sastoji se od dva fajla, java file i build skripta. Analiziraj skriptu i mislim da ce ti biti jasno kako to sve radi.
A sta sve jos mozes da napravis sa antom otkrivaj sam. :)
Nadam se da sam bio od pomoci.
[ velimzo @ 03.02.2011. 00:51 ] @
@bantu
Hvala za linkove, mislim da ce ovo biti dovoljno za pocetak
@iMac
Zeleo bih da vidim kako stvari funkcionisu iz konzole, pre nego li predjem na neko naprednije razvojno okruzenje.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|