動機
巷で騒ぎ始めているプログラミング言語「Kotlin」(2017年5月現在)が気になり、ちょっと動かしてみようと思ったのがきっかけです。
でもそのためにわざわざ「InteliiJ(https://www.jetbrains.com/idea/) 」とか入れたくないのが正直な気持ち。そこで、すでに環境として構築済みである「Visual Studio Code」上で気軽にできたらいいかなと思って、いろいろ試してみた。
結論
- Java開発について知見が深ければおそらくハマらなかったかもしれない。
- Kotlinコンパイル時に指定するオプション引数は大事だってことが改めてわかった。
実際にやってみる
手元環境
- Mac Book Air (Early 2014)
- macOS Sierra 10.12.4
- Visual Studio Code April 2017 (version 1.12)(https://www.microsoft.com/ja-jp/dev/products/code-vs.aspx)
- homebrew(https://brew.sh/index_ja.html)
Kotlin関係の準備
Visual Studio Codeの機能拡張をインストール
機能拡張タブを押して、検索窓でkotlin language
と入力して検索し、「Kotlin Language」をインストールする
Kotlin環境を構築
homebrewを使う。
$ brew install kotlin
これだけ。インストール完了後、kotlin
、kotlinc
、kotlinc-js
、kotlinc-jvm
が使えるようになる。
チュートリアルっぽく「Hello, Kotlin」をやってみる
kotlinのコーディング
適当なディレクトリ上でCodeを起動し、hello.kt
ファイルを作成する。
fun main(args:Array<String>){
println("Hello, Kotlin")
}
kotlinコードをコンパイルする
kotlinのインストール後に出てきたコマンド名から察するにkotlinc
がコンパイラじゃね?と思ってそれを実行する。
$ kotlinc hello.kt
実行後にHelloKt.class
なるファイルができる。
kotlinを実行する
これもコマンドから察するにkotlin
コマンドに先ほど生成されたファイルを入力として与えれば実行できるんじゃね?と思い立ち、それを実行する。
$ kotlin HelloKt.class
error: could not find or load main class HelloKt.class
あれ、動かねー。
ググってみる
なんかInteliiJとかJetBeansあたりを前提とした記事しか出てこない。
コマンドラインのみでKotlinやってそうなサイトを探してみる
公式のチュートリアルで「コマンドラインで実行する」手順があった。
https://kotlinlang.org/docs/tutorials/command-line.html
結局のところkotlinc
のオプション指定が問題だったことがわかった。
リトライ
$ kotlinc hello.kt -include-runtime -d hello.jar
今度はhello.jar
ファイルが生成される。これをkotlin
コマンドで実行してみる。
$ kotlin hello.jar
Hello, Kotlin
できたーーー
終わりに
多分Java開発の知見があればハマらなかった問題かも。
あと、本格的に開発やるならばやはりInteliiJあたりの統合環境が必須になりそう。Android開発にKotlinが使えるようになったという話もあるぐらいなので、素直にAndroid Studioを使うべきか……。