public static class Test {
private static final String dbClassName = "com.mysql.jdbc.Driver";
public static void main(String[] args) throws
ClassNotFoundException, SQLException
{
Class.forName(dbClassName);
}
}
Při spuštění
java -ea Test -cp /home/kit/JavaClass:/usr/share/java/mysql.jar
mi to hlásí výjimku
Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
i přesto, že soubor /usr/share/java/mysql.jar existuje. Tuší někdo, čím by to mohlo být?
Ubuntu 14.04 LTS
Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:207:e...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Ovladač už se načítat nemusí, záleži jaké používáš IDE, já používám netbeans a tam v pravo klikneš na Libraries - add Library - a vyberes MySql JDBC Driver :)
#4santa58
Používám Vim (neplést s GVim), který má všechny potřebné vlastnosti a je přitom podstatně výkonnější. Navíc ho používám jako jednotný editor úplně na všechno. Funguje i na vzdálených serverech tak, jako kdybych u toho serveru seděl.
Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:207:e...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Neviem preco v definicii classpath je /home/kit/JavaClass: Nekodim v linuxoch, ale malo by to fungovat rovnako na vsetkych OS. Cize za prepinacom -cp by mali byt vymenovane libky, pozadovane pre beh programu. Skusil si to bez toho /home ... : ?
#6Dano
Do adresáře /home/kit/JavaClass se mi ukládají všechny přeložené třídy, tedy soubory s příponou .class. Zkusil jsem to i bez toho, výsledek byl stejný,
Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:207:e...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
#9Kit
Aha, já myslel, že to je nějaká jiná knihovna MySQL, že to máš přes symlink mě nenapadlo.
V každém případě se ti ta knihovna nelinkuje. Projekt ji nevidí. Symlinky bohužel dělají Javě problémy, dost často to souvisí s oprávněními... Symlink má jiné oprávnění než soubor, který chceš ve skutečnosti linknout. Zkus to tam naprat přímo, přidat přímo přes classpath ten konektor.
Mozes skusit este jednu vec a to rozbalit dane jarko a skontrolovat, ci pozadovany driver je v balicku akom ho volas. Resp stiahnut z mvn repa aktualnu verziu.
#12Kit
Vidíš, to mě nenapadlo. Je možné, že java ten příkaz interpretovala způsobem přidat cestu až po vybuildění toho souboru, ale potřebovala ho už před.
Javu z command liny nebuildím, tak jsem moc neporadil. Aspoň ti to frčí.
#11ondrej39
Na Linuxu problémy se symlinky nejsou - při otevření se chovají, jako by to byly skutečné soubory. Je to ošetřeno na úrovni operačního systému - aplikace to ani nemusí poznat.
Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:207:e...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.