Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为Postgres安装JDBC时遇到问题_Java_Linux_Postgresql_Jdbc - Fatal编程技术网

Java 为Postgres安装JDBC时遇到问题

Java 为Postgres安装JDBC时遇到问题,java,linux,postgresql,jdbc,Java,Linux,Postgresql,Jdbc,我想使用JDBC。我的代码: import java.sql.*; import java.util.ArrayList; import java.util.Properties; public class test { Connection conn; public test() throws ClassNotFoundException, SQLException{ Class.forName("org.postgresql.Driver"); String url =

我想使用JDBC。我的代码:

import java.sql.*;
import java.util.ArrayList;
import java.util.Properties;

public class test {

Connection conn;

public test() throws ClassNotFoundException, SQLException{
    Class.forName("org.postgresql.Driver");
    String url = "jdbc:postgresql://localhost/tb";
    Properties props = new Properties();
    props.setProperty("user","user");
    props.setProperty("password","passwd");
    conn = DriverManager.getConnection(url, props);
    System.out.println(conn.isClosed());
}

public static void main(String[] args) {
    try{
        test t = new test();
    } catch (Exception e){
        e.printStackTrace();        
    }
}
}
我的软件:postgres 9.1、java 1.7

我的尝试:

ziel@gad ~/java/test $ ls
postgresql-9.1-902.jdbc4.jar  test.java
ziel@gad ~/java/test $ javac test.java 
ziel@gad ~/java/test $ java -cp postgresql-9.1-902.jdbc4.jar test
Error: Could not find or load main class test

据谷歌的人说,这应该加载驱动程序。我做错了什么?

这是因为当您执行
-cp postgresql-9.1-902.jdbc4.jar
时,您将jar
postgresql-9.1-902.jdbc4.jar
定义为类文件的唯一位置,并且类
测试不在
jar
中。要解决此问题,必须执行以下命令:cmd
java-cp postgresql-9.1-902.jdbc4.jar;。测试

使用
java-cp postgresql-9.1-902.jdbc4.jar:。在Linux/Unix/OS X下测试

我猜您正在使用Linux操作系统,所以请尝试以下
java-cp postgresql-9.1-902.jdbc4.jar:。测试

在windows
java-cp postgresql-9.1-902.jdbc4.jar;中;。测试

在Linux机器上执行以下操作

javac-cp':postgresql-9.1-901.jdbc4.jar'postgresjavatest.java

java-cp':postgresql-9.1-901.jdbc4.jar'postgresjavatest


确保jar文件位于激发命令的同一位置。

如果我这样做了
java-cp'postgresql-9.1-902.jdbc4.jar;'test
我得到了相同的结果:
错误:无法找到或加载主类test
。您是否在
~/java/test
中有文件
test.class
?为什么在cmd中使用简单的引号
?OP有postgresql-9.1-902.jdbc4.jar。你为什么到处张贴这个答案?