Groovy无法连接到PostgreSQL数据库?

5

我正在使用Ready API 1.4.0,我尝试了以下Groovy代码连接到PostgreSQL。

import groovy.sql.Sql
import java.sql.Driver

def driver = Class.forName('org.postgresql.Driver').newInstance() as Driver 

def props = new Properties()
props.setProperty("DB_user", "user") 
props.setProperty("DB_password", "user")

def conn = driver.connect("jdbc:postgresql://localhost:54320/database_name", props) 
def sql = new Sql(conn)

try {
    sql.eachRow("select * from user") {
        log.debug(it)
    }
} finally {
    sql.close()
    conn.close()
}

然后我收到了这个错误:

在第4行出现java.lang.ClassNotFoundException:org.postgresql.Driver

我添加了这个jar lib到bin/ext目录下:postgresql-9.4-1205.jdbc42.jar

请问有什么帮助吗?谢谢。


这是一个Groovy脚本吗?你是通过命令行运行的吗? - Will
你把jar放在哪里了?不要把东西放在文件夹中,而是要放在类路径中。 - tim_yates
这是在SoapUI中的Groovy步骤,而不是在命令行中。 - Templog Log
我把jar文件放在了soapui文件夹的bin/ext目录下。 - Templog Log
肯定是类路径问题。 - injecteer
2个回答

7

1
我遇到了同样的问题。因此,手动下载PostgreSQL驱动程序并将其加载到Jenkins主服务器的Java lib目录中。 PostgreSQL JDBC 4.2驱动程序,42.2.14 https://jdbc.postgresql.org/download.html 重启Jenkins服务后,它就可以工作了。

我也遇到了同样的问题。只是想知道你在 Jenkins 上添加了 PostgreSQL 驱动程序的位置在哪里? - Krishnom

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,