1
当我尝试使用mvn spring-boot:run启动服务器时,出现此异常。我之前做过一次mvn清洁。我无法想象为什么会发生这种情况。配置似乎是正确的。获取连接关闭尝试使用JHipster连接到PostgreSQL数据库时发生异常应用程序
liquibase.exception.DatabaseException: org.postgresql.util.PSQLException: This connection has been closed.
at liquibase.database.jvm.JdbcConnection.setAutoCommit(JdbcConnection.java:363) ~[liquibase-core-3.4.2.jar:na]
at liquibase.database.AbstractJdbcDatabase.close(AbstractJdbcDatabase.java:1176) ~[liquibase-core-3.4.2.jar:na]
at liquibase.integration.spring.SpringLiquibase.afterPropertiesSet(SpringLiquibase.java:400) ~[liquibase-core-3.4.2.jar:na]
at com.mycompany.myapp.config.liquibase.AsyncSpringLiquibase.initDb(AsyncSpringLiquibase.java:63) ~[classes/:na]
at com.mycompany.myapp.config.liquibase.AsyncSpringLiquibase.lambda$afterPropertiesSet$31(AsyncSpringLiquibase.java:49) ~[classes/:na]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_60]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_60]
at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_60]
Caused by: org.postgresql.util.PSQLException: This connection has been closed.
at org.postgresql.jdbc2.AbstractJdbc2Connection.checkClosed(AbstractJdbc2Connection.java:851) ~[postgresql-9.4-1203-jdbc42.jar:9.4]
at org.postgresql.jdbc2.AbstractJdbc2Connection.setAutoCommit(AbstractJdbc2Connection.java:793) ~[postgresql-9.4-1203-jdbc42.jar:9.4]
at com.zaxxer.hikari.proxy.ConnectionProxy.setAutoCommit(ConnectionProxy.java:334) ~[HikariCP-2.4.1.jar:na]
at com.zaxxer.hikari.proxy.HikariConnectionProxy.setAutoCommit(HikariConnectionProxy.java) ~[HikariCP-2.4.1.jar:na]
at liquibase.database.jvm.JdbcConnection.setAutoCommit(JdbcConnection.java:361) ~[liquibase-core-3.4.2.jar:na]
... 7 common frames omitted
这是我的应用程序dev.yaml:
# ===================================================================
# Standard Spring Boot properties.
# Full reference is available at:
# http://docs.spring.io/spring-boot/docs/current/reference/html/common- application-properties.html
# ===================================================================
spring:
profiles:
active: dev
devtools:
restart:
enabled: true
livereload:
enabled: false # we use Grunt + BrowserSync for livereload
datasource:
driver-class-name: org.postgresql.ds.PGSimpleDataSource
url: jdbc:postgresql://localhost:3306/bowl
name:
username: postgres
password: root
jpa:
database-platform: com.mycompany.myapp.domain.util.FixedPostgreSQL82Dialect
database: POSTGRESQL
show_sql: true
properties:
hibernate.cache.use_second_level_cache: true
hibernate.cache.use_query_cache: false
hibernate.generate_statistics: true
hibernate.cache.region.factory_class: org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory
data:
elasticsearch:
cluster-name:
cluster-nodes:
properties:
path:
logs: target/elasticsearch/log
data: target/elasticsearch/data
mail:
host: localhost
messages:
cache-seconds: 1
thymeleaf:
cache: false
liquibase:
contexts: dev
server:
port: 8080
# ===================================================================
# JHipster specific properties
# ===================================================================
jhipster:
cache: # Hibernate 2nd level cache, used by CacheConfiguration
timeToLiveSeconds: 3600
ehcache:
maxBytesLocalHeap: 16M
mail: # specific JHipster mail property, for standard properties see MailProperties
from: [email protected]
metrics: # DropWizard Metrics configuration, used by MetricsConfiguration
jmx.enabled: true
spark:
enabled: false
host: localhost
port: 9999
graphite:
enabled: false
host: localhost
port: 2003
prefix: test
这是我application.yaml:
spring:
jpa:
open-in-view: false
hibernate:
ddl-auto: none
naming-strategy: org.springframework.boot.orm.jpa.hibernate.SpringNamingStrategy
messages:
basename: classpath:/i18n/messages
mvc:
favicon:
enabled: false
thymeleaf:
mode: XHTML
security:
basic:
enabled: false
# ===================================================================
# JHipster specific properties
# ===================================================================
jhipster:
async:
corePoolSize: 2
maxPoolSize: 50
queueCapacity: 10000
#cors: #By default CORS are not enabled. Uncomment to enable.
#allowed-origins: "*"
#allowed-methods: GET, PUT, POST, DELETE, OPTIONS
#allowed-headers: "*"
#exposed-headers:
#allow-credentials: true
#max-age: 1800
mail:
from: [email protected]
security:
rememberme:
# security key (this key should be unique for your application, and kept secret)
key: 7ba7d54b8c54ee10147cf46baa898c4cb7b4a597
swagger:
title: test API
description: test API documentation
version: 0.0.1
termsOfServiceUrl:
contact:
license:
licenseUrl:
现在我在这个问题上搞了三天。我甚至用mySQL试了一下,但是我在那里有类似的错误。我切换数据源驱动程序并尝试了很多方言。我不能想象为什么会发生这种异常。除了url和user/pw conf之外,配置是Jhipster原创的。我也重新安装了Jhipster几次。 – HansWurst
它看起来像一个环境问题,因为我们(显然)没有这种样品项目的问题。你可以尝试使用我们的“devbox”在https://github.com/jhipster/jhipster-devbox?它默认使用MySQL,但你也可以安装Postgresql。 –
'driver-class-name:org.postgresql.ds.PGSimpleDataSource'可能是个问题。使用spring引导时,不需要指定驱动程序(它从数据库url和classpath中计算出来)。尝试删除此行 – jny