Scala IntelliJ IDEAでsbtのプロジェクトを作る Windows10

現在私は、ScalaのScalatraというフレームワークで書かれた開発プロジェクトをわけあって引き継いでおります。
前に作っていた人は、現在うちの会社で別の仕事をしているのですが、その人は開発環境とかあんまり気にしないタイプで、テキストエディタ的にVisual Studio Codeを使っていたということです。

ただ、私は開発環境でデバッグとかしながら開発したい派です。Android Studioとかも使っていて親しみがあるので、IntelliJ IDEAでやってやろうと思いました。

しかし、いきなりIntelliJにScalatraのコードをブチこんでも全然うまくいかなかったんですよ。Scalatraのバージョンは2.6.5です。

というわけで、まずは初心にかえり、超簡単なプロジェクトをIntelliJで作ってみます。

環境は、Windows10 + IntelliJ IDEAコミュニティバージョン2020.1です。

ここで、とっても大事な話をします。

sbtで動かすScalaプロジェクトと、sbtを使わないScalaプロジェクトは、IntelliJに最初の導入をする部分で違います。

ここ間違うと、私みたいにはまります。(ノω・、) ウゥ・・・

最初、下記のページを見てやってたんですよ。

Intellij で sbt を使って Scala プロジェクトをビルドする
https://docs.scala-lang.org/ja/getting-started/intellij-track/building-a-scala-project-with-intellij-and-sbt.html

File→New→Projectと行くと、下記のような画面になりますが、

↑ここでScalaを選択してはダメです。

↓下記のように、左がScalaで、右がsbtを選択しましょう。


今回は、サンプルなので、気を付ける場所はここだけです。

Nextを押して、プロジェクトの保存場所を選択して、OKをクリックします。

プロジェクトを作ると、sbtの構成を、IntelliJが作ってくれるので、多少時間がかかります。

サンプルとして、さっきも紹介した下記のサイトにあるサンプルコードを書いておきます。

https://docs.scala-lang.org/ja/getting-started/intellij-track/building-a-scala-project-with-intellij-and-sbt.html

object Main extends App {
    val ages = Seq(42, 75, 29, 64)
    println(s"The oldest person is ${ages.max}")
}

画面の一番下に、sbt shellというタブがあります。

これで、

「ん~ 動くのかな?」

ということで、run と打ち込んでも、何も起こりません。

「動け、動け、動け、動いてよ~!!」

と泣き叫びたくなりますが、落ち着きましょう(´ω`)。

File→Setting→Build, Excution…→Build Tools→sbtの画面で

Use sbt shellとあるところのチェックボックスを二つチェックします。

OKをクリックして、sbt shellのところでもう一度、run って入力します。

すると、ちゃんと動作して、プログラムの実行結果がsbt shellに表示されました!

The oldest person is 75

ってやつが実行結果ですね。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です