pub:2015.4.6/upd:2016.8.4

Scalaのコンパイル

ソースのテスト投稿をかねて

検証用コードの用意

hogehoge.scala という名前でソースファイルを用意する。以下の検証用コード。

// hamchun.scala(検証用コード)
object hamchun {
    def main(args : Array[String]): Unit = {
        println("美しい日本でHam Ham! Ham chun chun!!! " + args(0))
    }                                     
    def sub(args : Array[String]): Unit = {
        println("HAGE★SHIIアメリカの Ham Ham! Ham chun chun chun!! " + args(0))
    }
}

コンパイル

shellからscalacコマンドでコンパイルする。

$ scalac hamchun.scala
% ls
hamchun$.class hamchun.class  hamchun.scala

コンパイルに成功すると、カレントディレクトリにhamchun.classとhamchun$.classが作られる。

実行

classファイルの実行

shellからscalaコマンドで、作成されたclassファイルのmainメソッドがJAVA VMで実行される。コマンドの引数にはclassファイルの.classよりも前の部分を指定する。

$ scala hamchun AHAAA!
美しい日本でHam Ham! Ham chun chun!!! AHAAA!

コンパイルなしで実行

実は、shellからscalaコマンドでコンパイルしなくても実行できる。この場合はコマンドの引数にソースファイルを指定する。

$ scala hamchun.scala YHMM!
美しい日本でHam Ham! Ham chun chun!!! YHMM!

なお、packageやimportの記述はコンパイル時に処理されるため、それらの処理が必要になる場合はコンパイルが必須となる。

REFERENCE

Leave a Reply

Your email address will not be published.