Documentation

You are viewing the documentation for the 2.1.5 release in the 2.1.x series of releases. The latest stable release series is 2.4.x.

§スタンドアロンで実行可能なアプリケーションのビルド

§dist タスクを使う

Play 2.1 アプリケーションをデプロイする最も簡単な方法は、(git などを使って) ソースコードをサーバに保存して、 play start もしくは play stage のどちらかでアプリケーションを起動することです。

その他に、Play のフレームワークに依存しないアプリケーションのバイナリをビルドしたいこともあるでしょう。その場合は、 dist タスクが利用できます。

Play コンソールで、 dist を入力してみましょう。

[My first application] $ dist

conf.file という特別なシステムプロパティにより、外部の application.conf を使ってアプリケーションをビルドすることができます。仮に本番環境向けの application.conf がホームディレクトリ以下に保存されているとすると、以下のコマンドでデフォルト以外の application.conf を組み込んだ play アプリケーションのバイナリをビルドすることができます。

 $ play -Dconfig.file=/home/peter/prod/application.conf dist 

タスクが完了すると、target フォルダに、アプリケーションを実行するための必要な全ての JAR ファイルを含む ZIP ファイルが生成されます。この ZIP ファイルの中身は次のような構成になっています。

my-first-application-1.0
 └ lib
    └ *.jar
 └ start

アプリケーションを実行するには start スクリプトを実行します。

Play コンソールを使う代わりに、 OS のシェルプロンプトから play dist を直接起動しても同じ事ができます。

$ play dist

§Maven (または Ivy) レポジトリへパブリッシュする

アプリケーションを Maven レポジトリへパブリッシュすることもできます。パブリッシュされるのは、アプリケーションの JAR と、POM ファイルの二つです。

パブリッシュしたい場合は、そのための設定を project/Build.scala に記述する必要があります。

val main = PlayProject(appName, appVersion, appDependencies).settings(
  
  publishTo := Some(
    "My resolver" at "http://mycompany.com/repo"
  ),
  
  credentials += Credentials(
    "Repo", "http://mycompany.com/repo", "admin", "admin123"
  )
  
)

設定を記述したら、Play コンソールで publish タスクを実行します。

[My first application] $ publish

上記の設定中にも登場している resolver や credentials の詳細な定義方法については、sbt のドキュメントを参照してください。