播放框架中未解决的 postgresql 9.2 jar 依赖关系
Posted
技术标签:
【中文标题】播放框架中未解决的 postgresql 9.2 jar 依赖关系【英文标题】:unresolved dependency for postgresql 9.2 jar in play framework 【发布时间】:2013-02-12 19:37:56 【问题描述】:我正在使用带有播放框架 2.1 的 postgresql 9.2
我在这里下载了驱动:http://jdbc.postgresql.org/download.html (JDBC4 Postgresql Driver, Version 9.2-1002)
我的project/Build.scala
文件如下:
import sbt._
import Keys._
import play.Project._
object ApplicationBuild extends Build
val appName = "myApp"
val appVersion = "0.1"
val appDependencies = Seq(
"postgresql" % "postgresql" % "9.2-1002.jdbc4")
val main = play.Project(appName, appVersion, appDependencies)
我已经把jdbc驱动放在play目录结构中的以下位置:
myApp/lib/postgresql-9.2-1002.jdbc4.jar
myApp/lib/9.2-1002.jdbc4.jar
myApp/lib/postgresql/postgresql/9.2-1002.jdbc4.jar
但是,使用 play run
运行应用程序时,我收到以下错误并且构建失败:
[warn] module not found: postgresql#postgresql;9.2-1002.jdbc4
[warn] ==== local: tried
[warn] /home/ubuntu/play-2.1.0/repository/local/postgresql/postgresql/9.2-1002.jdbc4/ivys/ivy.xml
[warn] ==== Typesafe Releases Repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/postgresql/postgresql/9.2-1002.jdbc4/postgresql-9.2-1002.jdbc4.pom
[warn] ==== Typesafe Snapshots Repository: tried
[warn] http://repo.typesafe.com/typesafe/snapshots/postgresql/postgresql/9.2-1002.jdbc4/postgresql-9.2-1002.jdbc4.pom
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/postgresql/postgresql/9.2-1002.jdbc4/postgresql-9.2-1002.jdbc4.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: postgresql#postgresql;9.2-1002.jdbc4: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
sbt.ResolveException: unresolved dependency: postgresql#postgresql;9.2-1002.jdbc4: not found
关于如何获得 Play 的任何提示!识别我的 jar 文件?
【问题讨论】:
【参考方案1】:Postgresql驱动has not yet hit the Maven central repo的9.2版本,所以你必须使用9.1版本:
"postgresql" % "postgresql" % "9.1-901-1.jdbc4"
或者您可以使用 9.2 版本,方法是将 JAR 放入您的 myApp/lib
文件夹并从您的 project/Build.scala
文件中删除任何依赖项(lib
文件夹由 sbt 自动添加)。
【讨论】:
是的,我很傻。如果我想手动将它包含在myApp/lib
中,我需要从Build.scala
中删除依赖关系。干杯【参考方案2】:
我在Repository找到了这个:
"org.postgresql" % "postgresql" % "9.2-1003-jdbc4"
【讨论】:
谢谢!这对我很有用:) 新版本也有【参考方案3】:当我将 9.2 版本更改为 9.1 版本时,它可以完美运行。感谢您的回答nico_ekito
我的buid.scala
val appDependencies = Seq(
"postgresql" % "postgresql" % "9.1-901-1.jdbc4",
jdbc,
javaCore,
javaEbean
)
我的应用程序.conf
db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://localhost:5432/DBName"
db.default.user=postgres
db.default.password=123456
【讨论】:
【参考方案4】:我使用以下链接中的信息解决了问题:
https://github.com/tminglei/slick-pg/issues/1
我希望你觉得它有用!! :)
祝你好运;)
linixinil.
【讨论】:
请在此处描述解决方案——不要只指向 URL。【参考方案5】:在application.conf文件中:
db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://localhost:5432/dataBaseName"
db.default.user=user
db.default.password="password"
在您的主项目中创建意大利面 /lib,并应添加 .jar 做 postgres。
下载here,然后重新加载项目。
【讨论】:
以上是关于播放框架中未解决的 postgresql 9.2 jar 依赖关系的主要内容,如果未能解决你的问题,请参考以下文章
在 postgreSQL 9.2 上编辑 postgresql.conf 文件?
Postgresql 9.2 错误与 group by 未出现在 postgresql 12 中