Groovy无法连接到postgresql数据库?

时间:2015-11-20 19:54:10

标签: postgresql groovy

我正在使用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()
}

然后我收到了这个错误:

  

java.lang.ClassNotFoundException:org.postgresql.Driver at line:4

我在bin / ext中添加了这个jar lib 的PostgreSQL-9.4-1205.jdbc42.jar

请帮忙吗?谢谢。

2 个答案:

答案 0 :(得分:6)

尝试使用Grape来获取PostgreSQL驱动程序。

@GrabConfig(systemClassLoader=true)
@Grab(group='org.postgresql', module='postgresql', version='9.4-1205-jdbc42')

请参阅http://docs.groovy-lang.org/latest/html/documentation/grape.html#Grape-JDBCDrivers

答案 1 :(得分:0)

我有同样的问题。因此,请手动下载postgres驱动程序并加载到Jenkins主服务器Java的lib目录中。

PostgreSQL JDBC 4.2驱动程序,42.2.14 https://jdbc.postgresql.org/download.html

重新启动Jenkins服务后,其工作正常。