Fool Pool

ハマった記

Play+ScalaのプロジェクトをHerokuにアップしようとするとハマる。。

HerokuでScalaのプロジェクトをアップできると聞いて、早速環境構築を試みた。

Play+Scalaのプロジェクトをherokuにアップするまでの手順は、この辺が参考になる。 http://www.slideshare.net/mollifier/scala-lt-18717003

プロジェクトの作成、コンパイル、実行は、Playの標準的なやり方で行う。

$ play new myApp1
$ cd myApp1
$ play run

ブラウザでhttp://localhost:9000にアクセス。

f:id:nakamine11:20140325193026p:plain

OK。ローカル環境では動いた。

次に、Playのプロジェクトをherokuにアップする

 $ heroku login
 $ cd myApp
 $ heroku create--stack cedar  # アプリ初期設定
 $ git push heroku master        # リモートホスト heroku へ master を push

が、さっそくハマった。

f:id:nakamine11:20140325193046p:plain

タイトル以外、何も表示されていない(苦笑)。

考えられる理由としては、以下の二つ:

  • herokuがsbtのバージョン(0.13.0)非対応
  • アップロード容量(100M)の制限に引っかかった。

公式ページのドキュメメントによると、 https://devcenter.heroku.com/articles/getting-started-with-scala#prerequisites

Prerequisites

  • Basic knowledge of Scala and sbt.
  • Your application must be compatible with a supported SBT version.
  • Your application must run on the OpenJDK version 6.
  • A Heroku user account. Signup is free and instant.

サインアップとOpenJDKはいいとして(Sbtが自動的にインストールしてくれるようだ)、サポートされているSBTのバージョンというのが、どうやら 0.13.0 に対応していないらしい。

property specifying a release version of SBT 0.11.0 - 0.12.3. SBT

また、無料プロジェクトの容量制限は200MB(*1)らしい。jarファイルを大量にアップしているとこの容量制限を超えてしまうらしく、このへんで引っかかっている可能性もある。

次は公式ドキュメントの手順でやってみようと思う。 https://devcenter.heroku.com/articles/getting-started-with-scala#prerequisites

TO BE CONTINUED...

[追記] *1: 容量制限は200MBのようだ。 http://blog.mah-lab.com/2013/05/16/heroku-commons-16/