安装应用程序后找不到org.postgresql.Driver

时间:2015-04-01 03:00:03

标签: java postgresql

当我尝试打开与PostgreSQL数据库的连接时,我添加它来识别驱动程序:

Class.forName("org.postgresql.Driver");

当我运行Netbeans / Eclipse的应用程序时,它运行正常。 我正在使用InnoSetup为此应用程序生成安装程序。安装后,postgresql.jar已经添加到文件夹中,但是我收到错误:

org.postgresql.Driver
    java.net.URLClassLoader$1.run(Unknown Source)
    java.net.URLClassLoader$1.run(Unknown Source)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(Unknown Source)
    java.lang.ClassLoader.loadClass(Unknown Source)
    sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    java.lang.ClassLoader.loadClass(Unknown Source)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Unknown Source)
    fourcis.scb.utils.DatabaseUtilities.createDatabaseIfNotExists(DatabaseUtilities.java:19)
    fourcis.scb.threads.ThreadOperacoesDatabase.run(ThreadOperacoesDatabase.java:17) 

仅在我安装应用程序时才会发生这种情况。当我从IDE运行时,它正常工作。你们知道它会是什么吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

从错误堆栈中,它看起来像一个类路径错误。是试图在运行时寻找驱动程序而无法找到它。您可以尝试以下方法之一来查看它是否解决了问题

1)设置Classpath变量以包含包含postgresql.jar

的文件夹

2)如果可行,使用类路径信息运行java commpand。 Way to set classpath

答案 1 :(得分:0)

您需要在/lib文件夹下包含jar文件。您的可执行文件所在的位置。