java.lang.ClassNotFoundException:org.postgresql.Driver,Android

use*_*048 15 java postgresql android classnotfoundexception

我在Windows上运行Eclipse.

按照本教程我下载了JDBC4,使用Project> Properties> add External JAR将其添加到我的构建路径,浏览文件,它工作正常(.classpath文件显示正确的lib路径).

该包出现在我的Referenced Libraries文件夹中,因此我继续本教程.

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;

    ....

    public void open ()
        {
    try {
        Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }

    try {
        conn = DriverManager.getConnection(url, username, password);
    } catch (SQLException e) {
        e.printStackTrace();
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为这将是那么简单,但我开始使用这个很长的堆栈跟踪

    java.lang.ClassNotFoundException: org.postgresql.Driver
Run Code Online (Sandbox Code Playgroud)

(如果需要,我可以提供更多)

我尝试过,include org.postgresql.*;但也没有帮助.我也尝试过JDBC3,但也没有运气.

用Android查看了Driver JDBC PostgreSQL,它提供了一个模糊的答案,说我最好只使用HTTP + JSON.这是我从未使用过的.

我是Android,postgresql,web开发的新手,所以一个简单的答案将不胜感激.

Men*_*ris 10

您需要在Mvnrepository中提到的项目中添加PostgreSQL JDBC驱动程序.

Gradle:

// http://mvnrepository.com/artifact/postgresql/postgresql
compile group: 'postgresql', name: 'postgresql', version: '9.0-801.jdbc4'
Run Code Online (Sandbox Code Playgroud)

Maven:

<dependency>
    <groupId>postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>9.0-801.jdbc4</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

您也可以下载JAR手动和导入到项目中.

注意:不推荐使用此答案中使用的编译.按照3的实现替换.


小智 5

您应该将jar包放入lib文件夹(WebContent-WEB-INF-lib),然后右键单击jar包 - 构建路径 - 添加到构建路径


duf*_*ymo 0

这是一个 CLASSPATH 问题;当类加载器尝试加载 PostgreSQL JDBC 驱动程序时,它不可用。您需要将其正确添加到您的 CLASSPATH 中。

如果它在 Eclipse 中工作,那是因为将 JAR 添加到构建路径就是将其添加到 CLASSPATH。您必须了解 CLASSPATH 在没有 Eclipse 辅助轮的帮助下如何工作。