# Treiber laden PostgreSQL



## Timmah (18. Dez 2005)

Ich benutze in meinem Programm PostgreSQL, und benutze auch den entsprechenden Treiber.

Wenn ich im eclipse das Programm direkt starte funktioniert auch alles wunderbar, da ich es ja dort im ClassPath habe (beim externen Starten soll der Treiber aus der jar geladen werden).
Doch wenn ich es dann als *.jar exportiere kommt immer die "no suitable driver" Meldung.

Wie binde ich also das Jar-File des Treibers in das Programm ein?

Ich habe hier im Forum schon einiges durchgelesen und ausprobiert, aber ich kann das Problem nicht beheben.

so wie es hier http://www.java-forum.org/de/viewtopic.php?t=22840&highlight=classpath beschrieben ist funktioniert es auch nicht...


```
File jarFile = new File("F://Ordner/postgresql-8.2dev-500.jdbc3.jar");
URLClassLoader cl = URLClassLoader.newInstance(new URL[] {jarFile.toURL()});
Class.forName("org.postgresql.Driver", true, cl);
```

Der Fehler "no suitable driver" kommt erst an der Stelle:


```
conn = DriverManager.getConnection("jdbc:postgresql://" + dbHost + ":" + dbPort + "/" + dbName, user, passwd);
```


----------



## Timmah (19. Dez 2005)

Also als Übergangslösung habe ich nun erstmal die postgresql-8.2dev-500.jdbc3.jar in den Ordner "<JAVAPFAD>\lib\ext" kopiert. Dann wird der Treiber wenigstens erstmal gefunden.

Aber ich hätte immer noch gerne eine Lösung eine gescheite Lösung für das Problem


----------



## Bleiglanz (19. Dez 2005)

Timmah hat gesagt.:
			
		

> Also als Übergangslösung habe ich nun erstmal die postgresql-8.2dev-500.jdbc3.jar in den Ordner "<JAVAPFAD>libext" kopiert. Dann wird der Treiber wenigstens erstmal gefunden.
> 
> Aber ich hätte immer noch gerne eine Lösung eine gescheite Lösung für das Problem


die schlechteste aller Lösungen

entweder du gibst den Classpath beim Start auf der Konsole mit an oder du verwendest einen relativen Classpath-Eintrag im Manifest deiner jar Datei

BTW: es gibt keine gescheite Lösung für dein Problem, ausser das treiber jar auspacken und mit in dein jar hineinpacken


----------



## Timmah (19. Dez 2005)

Okay. Den Treiber in die MANIFEST reinschreiben funktioniert  :toll: 

Den Inhalt in das JAR des Programms gibt immer Fehler bei mir.
Aber solange es so funktioniert...


----------

