2

我刚刚将java 7升级到8。所有测试用例都无法连接到本地数据库。

我发现了一个与 java 8 升级相关的错误报告,它指向“localhost”问题,所以我将所有数据库 url 的 localhost 更改为 127.0.0.1。然后它工作。

https://jira.atlassian.com/browse/CWD-3981

InetAddress.getHostName 行为已将 java 7->8 更改为在 8 中返回 localhost ,除非您将 localhost 的 FQHN 作为 /etc/hosts 中的第一个别名

根据此链接,如果我正确设置 /etc/hosts,我仍然可以使用 localhost。这是我的 /etc/hosts:

127.0.0.1 localhost.localdomain localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0 localhost

这是正确的设置吗?

这是我在 application.conf 中的数据库 url。

db.default.url="postgres://postgres:postgres@localhost:5432/prdata"
4

1 回答 1

0

我不确定在数据库连接期间是否调用了 getHostName..

您是否尝试过连接网址上的“jdbc”?

从文档中:

# Default database configuration using PostgreSQL database engine
db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://database.example.com/playdb"

所以我猜你的看起来像:

db.default.url="jdbc:postgresql://localhost/prdata"

我尝试使用 play-2.4 + Java 8 应用程序,如果“jdbc”不存在,我会收到“配置错误 [无法连接到数据库]”。

于 2015-10-24T17:05:53.027 回答