java mysql i jar

java mysql i jar
0

Witam mam problem. Napisałem aplikację korzystającą z bazy danych. Wykorzystałem mysql-connector-java-5.1.5-bin.jar. Wszystko ładnie działa. Przerobiłem program na jar i u mnie działa wszystko a na innych komputerach nie. Czym może to być spowodowane? Używam Eclipsa i Windows.

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Tak dokładnie opisałeś to "niedziałanie", że pozwolę sobie na dość bezczelne pytania. Czy na innych komputerach jest zainstalowana java ? Czy na innych komputerach jest uruchomiony MySql Server ?


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
0

Sora nie dokładnie napisałem. Ok a wiec tak. Na innych komputerach jest zainstalowana java. Wersja tej aplikacji w postaci appletu na nich działa. Aplikacja w postaci pliki jar. U mnie na kopie działa bez problemu. Na innych kompach uruchamia sie ale zatrzymuje się jak udało mi się zauważyć tak jakby w momencie rejestrowania connectora do mysql tzn linijka "DriverManager.registerDriver(new com.mysql.jdbc.Driver());"
i za nią już nie idzie. W pliku jar connector znajduje się. I nie mam już pomysłu dlaczego tak się dzieje.

0

Dobra doszedłem, że brakuje connectora w katalogu java na drugim kompie. Po dograniu działa. Ale czy jest jakać możliwość aby wykorzystał ten znajdujący się w pliku jar?

M1
  • Rejestracja:ponad 17 lat
  • Ostatnio:około 6 lat
0

Witam pisze dokładnie taką samą aplikacje tyle że z wykorzystaniem GUI, sprawdzałem to na kilkanaście sposobów i pod Winzgrozą i pod Linuxem. Jeśli connectora nie będzie bezpośrednio w katalogu javy to raczej na 98% nie ma innego sposobu użycia go z innego katalogu.

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Na 100% sterownika nie musi być w katalogu javy, jeżeli sterownik ładuje się tradycyjną metodą

Kopiuj
Class.forName(..);

ładowanie za pomocą

Kopiuj
DriverManager.registerDriver(new com.mysql.jdbc.Driver());

wymaga zapewne odpowiednich zapisów w pliku jar, zajrzyjcie do dokumentacji klasy DriveManager.


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Napisałem programik testowy

Kopiuj
import java.sql.*;

public class Test
{
    public static void main(String[] args)
    {
        new Test();
    }
    //------------------------
    public Test()
    {
        try
        {
            DriverManager.registerDriver(new com.mysql.jdbc.Driver());
            System.out.println("Sterownik zarejestrowany");
        }
        catch(Exception e)
        {
            System.out.println(e);
        }
    }
}

utworzyłem plik Test.jar, wrzuciłem do niego konektor, wyrzuciłem konektor z dysku i po uruchomieniu przeczytałem "Sterownik zarejestrowany".
Jak ładujesz konektor do swojego jara ? JVM nie odczyta jara z jara, trzeba zrobić tak (nie wiem czy jest to legalne) umieścić w swoim pliku jar katalogi com i org z konektora.


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.