error: java.lang.ClassNotFoundException: org.postgresql.Driver
error: java.lang.ClassNotFoundException: org.postgresql.Driver
我只是想在 Debian 10 上从 java (11.0.8) 连接到 postgres (13.0.1) 并得到以下错误:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class cli_test {
public static void main(String[] args) {
try {
Connection connection = null;
Class.forName("org.postgresql.Driver");
connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/myproj", "postgres", "<pwd>");
System.out.println("Connection established successfully");
} catch (Exception e) {
System.out.print("error: \n" + e.toString() + "\n" + e.getMessage());
}
}
}
我运行这些命令:
CLASSPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar
javac -verbose cli_test.java
java cli_test
我已验证 jar 文件存在于该位置并设置为 755 权限。
我收到这个错误:
java.lang.ClassNotFoundException: org.postgresql.Driver
我花了几个小时在网上搜索,发现很多其他人都有这个问题。我发现没有其他解决方案可以修复它。我试图在没有 java ide 的情况下做到这一点,只是一个文本编辑器。
这不是 Java 的问题,但您 bash 的使用方式有误。设置 CLASSPATH=..
不会使此环境变量在之后的程序调用中对 java
可用。尝试
export CLASSPATH=.:/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar
javac -verbose cli_test.java
java cli_test
或
CLASSPATH=.:/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar java cli_test
我只是想在 Debian 10 上从 java (11.0.8) 连接到 postgres (13.0.1) 并得到以下错误:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class cli_test {
public static void main(String[] args) {
try {
Connection connection = null;
Class.forName("org.postgresql.Driver");
connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/myproj", "postgres", "<pwd>");
System.out.println("Connection established successfully");
} catch (Exception e) {
System.out.print("error: \n" + e.toString() + "\n" + e.getMessage());
}
}
}
我运行这些命令:
CLASSPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar
javac -verbose cli_test.java
java cli_test
我已验证 jar 文件存在于该位置并设置为 755 权限。
我收到这个错误:
java.lang.ClassNotFoundException: org.postgresql.Driver
我花了几个小时在网上搜索,发现很多其他人都有这个问题。我发现没有其他解决方案可以修复它。我试图在没有 java ide 的情况下做到这一点,只是一个文本编辑器。
这不是 Java 的问题,但您 bash 的使用方式有误。设置 CLASSPATH=..
不会使此环境变量在之后的程序调用中对 java
可用。尝试
export CLASSPATH=.:/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar
javac -verbose cli_test.java
java cli_test
或
CLASSPATH=.:/usr/lib/jvm/java-11-openjdk-amd64/lib/postgresql-42.2.18.jar java cli_test