为Postgresql配置Grails 3

时间:2018-10-31 21:12:36

标签: postgresql grails jdbc

我一直试图让grails 3连接到postgres,但无法建立连接。

这在我的构建文件中:runtime "org.postgresql:postgresql:42.2.5"

和application.yml数据源:

dataSource:
    pooled: true
    jmxExport: true
    driverClassName: 'org.Postgresql.Driver'
    dialect: 'org.hibernate.dialect.PostgreSQLDialect'
    username: 'okcomputer'
    password: ''

environments:
    development:
        dataSource:
            dbCreate: create-drop
            url: jdbc:postgresql://localhost:5432/test
    test:
        dataSource:
            dbCreate: update
            url: jdbc:postgresql://localhost:5432/test
    production:
        dataSource:
            dbCreate: none
            url: jdbc:postgresql://localhost:5432/test
            properties:
                jmxEnabled: true
                initialSize: 5
                maxActive: 50
                minIdle: 5
                maxIdle: 25
                maxWait: 10000
                maxAge: 600000
                timeBetweenEvictionRunsMillis: 5000
                minEvictableIdleTimeMillis: 60000
                validationQuery: SELECT 1
                validationQueryTimeout: 3
                validationInterval: 15000
                testOnBorrow: true
                testWhileIdle: true
                testOnReturn: false
                jdbcInterceptors: ConnectionState
                defaultTransactionIsolation: 2 # TRANSACTION_READ_COMMITTED

我在这里做错了什么?我确定数据库存在并且用户/密码正确,但是不确定如何进行故障排除。 此处提供了完整的堆栈跟踪:https://pastebin.com/THrALVaE

(我正在使用java 1.8和grails 3.3.8)

关于grails和postgres的信息非常少,所以在此先感谢大家!

1 个答案:

答案 0 :(得分:2)

驱动程序名称可能应该是org.postgresql.Driver,而不是org.Postgresql.Driver。类名和包名在JVM上区分大小写。

dataSource:
    pooled: true
    jmxExport: true
    driverClassName: 'org.postgresql.Driver'
    dialect: 'org.hibernate.dialect.PostgreSQLDialect'
    username: 'okcomputer'
    password: ''