Playframework 带Play框架的Postgresql

Playframework 带Play框架的Postgresql,playframework,playframework-1.x,Playframework,Playframework 1.x,我试图将Postgresql与Play一起用于Yabe教程,但出现以下错误: 无法连接到数据库,未找到驱动程序(org.postgresql.Driver) 这是我的连接字符串: # If you need a full JDBC configuration use the following : db.url=jdbc:postgresql:yabe db.driver=org.postgresql.Driver db.user=yabe db.pass=yabe # # Conn

我试图将Postgresql与Play一起用于Yabe教程,但出现以下错误:

无法连接到数据库,未找到驱动程序(org.postgresql.Driver)

这是我的连接字符串:

# If you need a full JDBC configuration use the following :
 db.url=jdbc:postgresql:yabe
 db.driver=org.postgresql.Driver  
 db.user=yabe
 db.pass=yabe
#
# Connections pool configuration :
 db.pool.timeout=1000
 db.pool.maxSize=30
 db.pool.minSize=1
在我的lib文件夹中,我有以下内容: postgresql-9.1-901.jdbc3.jar


我尝试将驱动程序名称更改为相同的名称is tha jar,但仍然得到相同的错误。有什么想法吗?

您不需要编辑完整的JDBC配置。我在本地使用postgesql,我只是在conf文件夹的application.conf文件中添加了这一行:

# To connect to a local PostgreSQL9 database, use:
db=postgres://userName:yourPassword@localhost:5432/nameOfYourDB

如果您在本地,除非您更改用户名,否则用户名通常是postgres。

您应该复制PostgresSql驱动程序版本“jdbc4”[您拥有的是jdbc3]。从


或者,您可以在依赖项中使用
-postgresql9.1-901.jdbc4
。但是我认为Maven还没有这个最新版本。

Play框架已经包含了Postgres的驱动程序。请执行以下操作:

  • 从dependencies.yml文件中删除对postgreSQL驱动程序的任何引用
  • 执行“播放deps--同步”
  • 删除库/文件夹中与postgreSQL驱动程序相关的任何jar
  • 将连接字符串更改为:

    分贝=postgres://user:pwd@本地主机:5432/yabe


这将解决您的冲突。

如果您需要SSL支持:

db=postgres://user:password@server.example.net:5432/dbname?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory

如果您使用的是Play 2.0,则其工作原理略有不同。url实际上如下所示:

db.default.driver=org.postgresql.Driver
db.default.url="postgres://user:password@servername/dataBaseName"
但是,除非在build.scala或build.java中的依赖项部分添加以下行,否则这也会出错:

"postgresql" % "postgresql" % "9.1-901.jdbc4"

我尝试了您的建议,但收到的错误是:发生了JPA错误(如果没有正确配置的数据库,则无法启动JPA管理器):未配置数据源您是否检查了org.postgresql.Driver是否在Jar中?您好。我没有。我从Postgresql下载了驱动程序。我来看看你的建议。我在.yml文件中添加了一个依赖项,它成功地下载了.jar文件。不过我还是会犯这个错误。发生数据库错误:无法连接到数据库,找不到驱动程序(postgresql-9.0-801.jdbc4.jar),请通过查看jar直接检查。下面是jar中的内容。复制如果jar在Maven central中可用,依赖项会将其下拉。但正如我所说,这个最新版本还没有发布。不管我取什么版本。我犯了一个错误。下面是我的设置:application.conf db.url=jdbc:postgresql:yabe db.driver=postgresql-9.0-801.jdbc4.jar db.user=yabe db.pass=password dependensions.yml require:-play-postgresql->postgresql 9.0-801.jdbc4错误:发生数据库错误:无法连接到数据库,找不到驱动程序(postgresql-9.0-801.jdbc4.jar)我做错了什么?libraryDependencies+=“postgresql”%“postgresql”%“9.1-901.jdbc4”在游戏中没有一个是正确的2@MikeSlinn是的,嗯,这是一个剧本(第一个问题:)