HerokuにPlay2.0のアプリケーションをデプロイできない
Herokuに、Play2.0で作成したアプリケーションのDeploy時にエラーがでるので、それに対する対応を記載する。
環境
- play2.0(2012/4/23現在)
Deploy方法は、下記を参照。
http://www.playframework.org/documentation/2.0/ProductionHeroku
現象としては、下記のエラーが発生して
コンパイルが途中で終了します。
sbt.ResolveException: unresolved dependency: play#sbt-plugin;2.1-SNAPSHOT: not found
ログを見る限りは、2.1-SNAPSHOTがないということらしいが
そもそも、今現在で2.1はリリースされていないのでは?
ということで、下記のファイルを変更しました。
/project/plugins.sbt
//addSbtPlugin("play" % "sbt-plugin" % "2.1-SNAPSHOT") addSbtPlugin("play" % "sbt-plugin" % "2.0")
これでコンパイルが可能になり、動作するようになります。
バージョンについては、自分で適切なバージョンを選択してください。
playframework1.2.4:フラッシュスコープが取れなくなる
application.confのhttp.pathをデフォルト(/)から変更した場合に、
フラッシュスコープが取れなくなり、一部の機能が動かなくなる
不具合
今のところ自分で確認がとれているのは
下記の機能です。
- Secureモジュール
- validationのkeep
等
どうやら、このパスを考慮しないで、フラッシュスコープにputするために
cookieに保存できないようです。
Ticket
https://play.lighthouseapp.com/projects/57987/tickets/1288-httppath-and-secure-module
修正もGitに上がっているようです。
https://github.com/playframework/play/pull/395
今のところ、1.2.5のリリースを待つか、自分で修正してビルドするか
Gitから取得してビルドするかしかないようですね。
追記
http.pathの設定は下記のように設定する
http.path=/hoge
下記のようにした場合は動作しなかったです。
http.path=hoge
http.path=/hoge/