如何在不引用绝对路径的情况下引用播放框架第三方模块?

SaM*_*SaM 5 dependencies module playframework

这是我的情况.我有一个使用guice模块的播放应用程序.为了使用guice模块:

  • 我用它安装了它play install guice.这将安装在$PLAY_HOME/modules我很好的.我不想以任何方式编辑模块文件.
  • 然后我按照我的方式声明了模块dependencies.yml:- play -> guice 1.2
  • 在我的应用程序中,我运行了play dependencies,这可以很好地恢复模块并创建一个modules/guice-1.2引用guice模块的文件.

问题是该文件的内容如下所示:/some-absolute-path/play-1.2.x/modules/guice-1.2.

在本地开发工作时,这很好.但是,当我想转移到生产服务器时,使用不同的Play安装!(即使用不同的绝对路径)它显然会失败.

那么解决这个问题的最佳方法是什么?

现在我已经使用这样的方式声明application.conf文件中的模块:module.guice=${play.path}/modules/guice-1.2.不幸的是,${play.path}魔法似乎不适用于那些生成的文件.

顺便说一句,我使用Play版本1.2.3!

Per*_*ega 0

当您在生产中运行时,您可以将依赖项(通过 play deps 命令)与 Play 的本地安装重新同步,或者在某些情况下您可以预编译所有内容,然后路径就不会出现问题。

例如,第二种情况是 Heroku 的情况。