GradleでKotlinのプロジェクトを作成する
Kotlin入門1日目:まずはMacでの環境構築。Intellijはインストール済み。
GradleとKotlinのインストール
どちらもbrew
を使ってインストールする。Java
もいるんでインストールしておく。
brew cask install java
brew install kotlin
brew install gradle
Java
はOpenJDK11が入るみたい。
とりあえずKotlinの動作確認
Working with the Command Line Compiler - Kotlin Programming Language
こちらを参照して、以下のコードを実行してみる。
$ cd /tmp
$ cat <<KT > hello.kt
fun main(args: Array<String>) {
println("Hello, World!")
}
KT
$ kotlinc hello.kt -include-runtime -d hello.jar
$ java -jar hello.jar
Hello, World!
ひとまず動いた。
Gradleを使ったプロジェクト作成
とりあえずGradleの方で初期化がいるのかな。
$ mkdir hello-kotlin
$ cd hello-kotlin/
$ gradle init --dsl kotlin
Select type of project to generate:
1: basic
2: groovy-application
3: groovy-library
4: java-application
5: java-library
6: kotlin-application
7: kotlin-library
8: scala-library
Enter selection (default: basic) [1..8] 6
Project name (default: hello-kotlin):
Source package (default: hello.kotlin):
BUILD SUCCESSFUL in 7s
2 actionable tasks: 2 executed
途中でプロジェクトのタイプを聞かれたので、6: kotlin-application
にしてみた。
$ tree
.
├── build.gradle.kts
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle.kts
└── src
├── main
│ ├── kotlin
│ │ └── hello
│ │ └── kotlin
│ │ └── App.kt
│ └── resources
└── test
├── kotlin
│ └── hello
│ └── kotlin
│ └── AppTest.kt
└── resources
13 directories, 8 files
こんな感じのファイル構成になっている。とりあえず作成されたコードは以下。
$ cat src/main/kotlin/hello/kotlin/App.kt
/*
* This Kotlin source file was generated by the Gradle 'init' task.
*/
package hello.kotlin
class App {
val greeting: String
get() {
return "Hello world."
}
}
fun main(args: Array<String>) {
println(App().greeting)
}
ひとまず実行してみる。
$ gradle run
> Task :run
Hello world.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 12s
3 actionable tasks: 3 executed
やはり初回の起動は遅い。必要なライブラリとかをダウンロードしたりするからかな。あとなんかWarning出てるし。いろいろと気になることはあるものの、とりあえず今日はここまで。
次回はIntelliJ IDEAのプロジェクト構築をGradleからやってみたい。