IntelliJとScalaでHello Worldした際に、はまったこと


前回の「Windows10でScalaの開発環境を作るためにやったこと」では、開発用の環境を作りました。
今回は、その環境で「Hello World」をしようとしたら思ったより苦戦したので、はまりポイントの備忘です。

間違いなどあればコメントで、訂正していただけると嬉しいです。

参考サイト

下記のサイトを参考にしながら進めていきました。
- Scala入門時に役立つ情報まとめ
- ドワンゴ社 新入社員Scala研修資料
- Getting Started with Scala in IntelliJ
- IntelliJ Run Configuration - Running your Scala application

1. JDKがインストールされていなかった

環境作成時には、最新バージョンのJavaをインストールしていた。
しかし、JDKはインストールしていなかったので、追加でインストールが必要になった。
Java SE Downloads

※プロジェクト作成時に赤枠部分の設定が必要

2. プロジェクトにscalaファイルが追加できない

現象

原因

  1. プロジェクトにFrameworkが追加されていない
  2. ScalaSDKのライブラリが作られていなかった

解決方法

下記の2つのStepでscalaファイルを追加できるようになりました。

Step1. プロジェクトにFrameworkを追加する

Step2. ライブラリを作成する

3. 実行時にjava.lang.ClassNotFoundExceptionが発生する

現象

原因

未だに分かってません。。。
とりあえず下記の2つの解決策で実行できるようになりました。

解決策①

最初はBeforeのソースを記述していましたが、Afterに修正すると実行できるようになりました。

Before.scala
object Sample {
  def main(args: Array[String]): Unit = {
    println("hello world")
  }
}
After.scala
object HelloWorld extends App {
  println("hello world")
}

解決策②

仕事でScalaを使っている友人の同僚からの下記のアドバイスを頂き、試したことろ実行できるようになりました。

  1. メニューの Run -> Edit Configurations
  2. 左のメニューから Application を選択。なければ左上の + を押して追加
  3. Main class と書いてあるとこの横の ... を押す
  4. Project タブで main object を選択
  5. 実行