再次:使用Play 2.0 / Java在Heroku上找不到Postgres驱动程序

时间:2012-11-22 23:58:24

标签: java postgresql heroku playframework

亲爱的Heroku / Play专家,

我是Heroku和Play 2.0(使用Java)的新手,我正在尝试启动并运行我的第一个支持db的Heroku应用程序(我正在使用zentask应用程序进行学习)。我一直在阅读stackoverflow和@James Ward的Play2torial上的相关文档,但似乎无法找到我遇到的问题的解决方案:

当我将文件推送到Heroku时,我总是得到postgres驱动程序的“找不到驱动程序”错误 - 就像它没有安装在Heroku上一样。我已经尝试过你们,专家们提出的所有解决方案,但没有任何效果。我甚至尝试将jdbc驱动程序jar复制到lib文件夹中以补偿丢失的jdbc jar,但后来我得到一些关于缺少验证的错误 - 这可能是因为我找不到{{的jar 1g}在postgres网站上。无论如何,你的解决方案建议这个postgres驱动程序应该是开箱即用的标准设置Heroku所以我有点沮丧...

因此,请在下面找到“驱动程序未找到错误”,其中包含所涉及的文件以及产生的错误消息。

我非常非常感谢你的建议。非常感谢提前!最好,

奥拉西奥


以下是我的文件:

9.1-901-1.jdbc4

Procfile

web: target/start -Dhttp.port=${PORT} ${JAVA_OPTS} -Dconfig.resource=application.conf

Build.scala

import sbt._ import Keys._ import PlayProject._ object ApplicationBuild extends Build { val appName = "Myapp" val appVersion = "1.0" val main = PlayProject(appName, appVersion, mainLang = JAVA) val appDependencies = Seq( "postgresql" % "postgresql" % "9.1-901-1.jdbc4" ) }

application.conf

错误消息:

application.name=myapp

application.secret="some secret"

db.default.driver=org.postgresql.Driver

db.default.url="jdbc:postgresql://some URL"

ebean.default="models.*"

logger=ERROR

logger.play=INFO

logger.application=DEBUG

1 个答案:

答案 0 :(得分:5)

感谢伟大的Heroku支持团队,我可以为您提供解决方案:显然,我没有在PlayProject中指定我的appDependencies。所以我不得不将我的appDependencies添加到Build.scala中的PlayProject,如下所示:

val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA)

我希望这可以帮助遇到同样问题的每个人:)

干杯,Horacio