Play frameworkを使ってみた ①
遅くなったが新年初エントリー。就活で書く暇がなかった。
という訳で、今回はPlayというフレームワークを使ってみました。
軽く調べてみると以前使ったことのあるSpringの次くらいにトレンドな感じの印象。
使ってみた感想として、確かに慣れれば開発がはかどりそうだが、やはり初心者が触り始めるには難しい点があります。
- Documentationが英語
- Documentationに書かれていることがすべて正しいとは限らない
- うまくいかない時の対処法はググるしかない
これらは割と何に対しても言えることかもしれないが、特に2番目の問題はきつい。
情報自体が間違っているという訳ではないです。
ただ昔のバージョンでの書き方のまま更新されておらず、いざ真似すると非推奨と怒られたり、うまく動作しなかったりでもう・・・。
そこで今回は複数回にわたって、Playフレームワークの使い方を簡単に紹介します。
第1回ではIntellijで開発を始めるまでを説明しようかなと思います。
ダウンロード
まずはダウンロードから。以下のページからできます。
https://www.playframework.com/download
いろいろとダウンロードできるものがありますが、とりあえずPlayフレームワークを使ってみたいという人は画面中腹あたりのPlay with Activator
という項目のActivator 1.3.12 including Play 2.5.12
というものを選択してください。ダウンロードが始まります。
これを動かすにはJDK8が必要だが、Playフレームワークを使おうと思っている方ならまず入っていると思います。
「え・・・・」って方は以下で今すぐJavaをインストールしておきましょう。PATHに追加しておくのも忘れずに。
Java SE Development Kit 8 - Downloads
※Javaのインストール方法、およびPATHへの追加の仕方は調べればいくらでも出てきます。
ダウンロード以降はこちらが非常に参考になります。
Installing - 2.4.x
クイックスタートの項目の最初に最新の Typesafe Activator を ダウンロードする とありますが、これは先ほどダウンロードしたActivatorなので気にしない。
あとは手順通りにやれば、とりあえずうまくいくはず・・。
activatorコマンドがないという方はbin
ディレクトリにあるはずなのでそれを指定してください。
また、そこにPATHを通しておくと便利です。
Playのプロジェクト作成法
Playのプロジェクトの作り方は細かく説明すると大変なので、とりあえず簡単な作り方を。
まずはプロジェクトを作りたいディレクトリまで移動してから、以下のコマンドを順に実行します。
// [project-name]にはお好きなプロジェクト名を指定してください。 $ activator new [project-name] play-java $ cd [project-name] $ activator run
プロジェクトをactivator new
で生成後、activator run
せずにIntellijにインポートしてからRunしようとすると
view.htmlなどのシンボルが見つかりません
とのエラーが出ることがあります。
ので、こうなってもなってなくても3の手順は一回踏むべきかもしれない。(その後に Ctrl + D で終了しても大丈夫)
ちなみに、javaじゃなくてscalaで開発したいって方は、最初のnewでplay−javaではなくてplay-scalaと指定してください。
Intellijへのインポート手順
Playのアプリケーションはeclipseなどでも開発できますが、この記事ではIntellijでのインポート手順を説明します。
Intellij派の人もそうでない派の人もこちらを参考に進めてください。
https://www.playframework.com/documentation/ja/2.4.x/IDE
Intellijで展開するにあたって、注意しなければいけないのが、先ほどのページにも書かれているが、Play2.4からはNew Projectから作成のは非推奨であるという部分。
これは先ほどのactivator new
からプロジェクトを作成する方法をせずに、Intellijで直接作成するというなんとも便利そうな話であるが、少なくとも2.5の私の環境では途中で失敗してできなかった。非推奨ではなくて、やめてくださいと書いてほしい。
大人しく、activator new
からプロジェクトを作成してそれをIntellijにインポートするようにしましょう。
では、前置きが長くなりましたが、以下がIntellijへのインポート手順になります。
- Intellijのメイン画面で
Import Project
を選択し、先ほど作成したプロジェクトを選択。 - Import project from external modelからSBTを選択。Nextを選択し、次もJDKが正しく設定されているのを確認したらFinishを選択。
- プロジェクトを展開できたら、Project Structure を開き、 Modulesの項目からroot の Dependencies の項目に scalaのsdk があることを確認。なければ追加。
最後にRun Configurationの設定も行いましょう。+をクリックして SBT Tasks を選択。Tasks に run とだけ書いて apply して保存。これで Control + r で実行できます。
実行したらhttp://localhost:9000
でアクセスして、動いていることを確認できます。
うまくいかない時
Intellijにインポートする時に、Import project from external modelからSBTを選択しようにも項目が出てこない場合があります。
これを解決するには、Intellijにscalaプラグインをインストールする必要があります。
Intellijのメイン画面から、Configure->Pluginsを選択し、Install JetBrains plugins...を選択。
そしてscalaと検索し、出てきたプラグインをインストールすれば問題は解決されると思います。
次回は、Playを使ったアプリケーション開発をする上で最低限必要なポイントを紹介したいと思います。
Play frameworkを使ってみた ② - 8t's BBR