Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Scala & Play2 学習ノート(1)

Posted at

Scala & Play2 学習ノート(1)

ここ4,5年C#&Azureマンでやってきましたがこの度転職する運びとなり、新しい職場ではScala&AWSが中心と聞いているので集中的に勉強してみようかと思い学習の経過・メモを記事に残していくつもりです。
ちなみにScala自体は全くの未経験というわけではなく、個人的に勉強して納品とは関係の無い業務ツールを作っていた時期(ソースを見るとScala 2.10.2時代)があります。
かなり忘れている部分もあるのでリハビリを兼ねつつボチボチ画像少なめメモ中心でやっていきます。

環境作成

sbt インストール

なにはなくとも sbt。Macならbrewでinstallするだけ。

$ brew install sbt

sbt および Scalaのバージョンを確認するには sbt about。

$ sbt about
[info] Loading project definition from /Users/xxxx/project
[info] Set current project to xxxx (in build file:/Users/xxxx/)
[info] This is sbt 1.1.6
[info] The current project is ProjectRef(uri("file:/Users/xxxx/"), "xxxx") 0.1.0-SNAPSHOT
[info] The current project is built against Scala 2.12.6
[info] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin, sbt.plugins.Giter8TemplatePlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.12.6

IntelliJ インストール

昔は Ultimate じゃないと Scala が使えなかった気がしますがその頃買ったライセンスも切れているし Community 2018.1 をインストール。
セットアップ中に Scala Plugin を入れられるのでそこでインストール。

1-install-scala-plugin.png

インストールが終わったら New Project で Scala を選択。ライブラリが未設定なので右の"Create..." から Scalaのバージョンを選択し、グローバルのバージョンとして設定。

1-new-project-scala.png

Hello Scalaする

IntelliJ 上で実行

object Hello {
  def main(args: Array[String]): Unit = {
    println("Hello Scala")
  }
}

パパっとメインクラスを作ってメインクラスで右クリックして実行。

1-debug-hello.png

Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin/java 〜
Hello Scala

実行はできるけど赤字でなんか出てくるので嫌な感じがしますが、ここ によると
Macの古いJavaの問題で無害らしい。後でJava入れ直しましょう。

sbtで実行

これはこれで簡単に動かせて悪くはないのですがやっぱり sbt で動かしたいので sbt プラグインを入れる。
sbtプラグインを入れて IntelliJ を再起動し、今度は sbtベースのプロジェクトを作成。

1-install-sbt-plugin.png
1-new-project-sbt.png

先程と同様にメインクラスを作り、今度は"Edit Configuration" から sbt run を行う sbt Taskを追加。
タスクを実行すると

1-sbt-run-task.png

[info] Loading project definition from /Users/yossy6954/IdeaProjects/HelloScalaSbt/project
[info] Loading settings from build.sbt ...
[info] Set current project to HelloScalaSbt (in build file:/Users/yossy6954/IdeaProjects/HelloScalaSbt/)
[info] Running com.yossy6954.HelloScalaSbt 
Hello Scala
[success] Total time: 1 s, completed 2018/06/14 19:57:55

動きました。ターミナルでプロジェクトのディレクトリに移動し、sbt run でも同様に動作します。
次からは Play2 やっていきます。

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?