gpt4 book ai didi

java - 加载 postgreSQL JDBC 驱动程序

转载 作者:行者123 更新时间:2023-11-29 11:57:16 26 4
gpt4 key购买 nike

我正在尝试为 Java 程序加载 JDBC postgreSQL 驱动程序。我知道这在互联网上到处都是。我尝试了很多解决方案,但没有一个对我有用。

问题是我得到这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError:    
classes/com/freire/test/JDBCExample/class
Caused by: java.lang.ClassNotFoundException: classes.com.freire.test.JDBCExample.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

我的代码是这样的:

package com.freire.test;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;

public class JDBCExample
{
public static void main(String[] argv)
{
System.out.println("JDBC Connection Testing");
try {
Class.forName("org.postgresql.Driver");
} catch (ClassNotFoundException e) {
System.out.println("PostgreSQL JDBC Driver not included!");
}
}
}

我的项目结构如下所示:

myProject
src
com
freire
test
JDBCExample.java
classes
com
freire
test
JDBCExample.class
lib
postgresql-9.2-1003.jdbc3.jar

编译工作正常:

java -d classes/ src/com/freire/test/JDBCExample.java

但是执行会产生错误:

java classes/com/freire/test/JDBCExample

值得一提的是,我正在开发 OS X Mountain Lion。

我们将不胜感激。

最佳答案

首先,您需要在运行 java 程序时使用 . 而不是 / 提及包名称:

转到您的类目录并运行 JDBCExample 为:

java com.freire.test.JDBCExample

但它现在会因为找不到 postgres 驱动程序类而哭泣,因为类路径中缺少 postgres jar。因此您需要在运行程序时使用类路径选项并将您的 postgres jar 添加到类路径中:

对于窗口:

java -cp .;../lib/postgresql-9.2-1003.jdbc3.jar com.freire.test.JDBCExample

对于 Linux:

java -cp .:../lib/postgresql-9.2-1003.jdbc3.jar com.freire.test.JDBCExample

关于java - 加载 postgreSQL JDBC 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19216072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com