File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JDBC and Relational Databases and the fly likes Problem setting Driver in Classpath Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "Problem setting Driver in Classpath" Watch "Problem setting Driver in Classpath" New topic

Problem setting Driver in Classpath

Madhur Baheti

Joined: Sep 18, 2004
Posts: 4
Hi,I am having trouble setting the classpath for my Driver class. I have a simple database program that registers a driver class org.postgresql.Driver in the function - Class.forname().The class file is defined in a jar file pgdev.307.jdbc3.jar, which is in the directory c:\postgre.
On Extracting the jar file, I get the following directory structure:

I have tried to set the classpath as:
set classpath=C:\postgre\pgdev.307.jdbc3.jar
but on running the program, I get :
java.lang.ClassNotFoundException rg.postgresql.Driver

Can someone please help me with the problem.

[edited to disable smilies]
[ November 02, 2004: Message edited by: Jeanne Boyarsky ]
David O'Meara

Joined: Mar 06, 2001
Posts: 13459

Are you running a stand-alone allication or in an application server or some other configuration?

I ask since app servers ignore the classpath so you could set it to whatever you wanted and it wouldn't make a difference to the server!

If you're in a servlet container, it's typically best to drop your jar in the WEB-INF/lib directory. The container will then find and load the jar file contents for you.

If you're using a stand-alone application, try using the javap command to test your classpath. ie type javap org.postgresql.Driver and see if it works. You can then play with your classpath to get it right without having to worry about your code.
Jeanne Boyarsky
author & internet detective

Joined: May 26, 2003
Posts: 33106

I'm assuming you are not using an application server. (If you are, you should be using datasources, not Class.forName().)

Are you setting the classpath as an environment variable or a command line argument? Try using the -classpath switch while debugging. That will guarantee things are set the way you want.

[OCA 8 book] [Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
Other Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, TOGAF part 1 and part 2
I agree. Here's the link:
subject: Problem setting Driver in Classpath
It's not a secret anymore!