はじめに
最近kotlinでプロジェクトを作成し、その際に案外簡単にプロジェクト作成できたのでこちらでそのときの作り方を紹介します。
プロジェクトを作る
SPRING INITIALIZRでプロジェクト作成
もっとも簡単にプロジェクトを作成するために使えるのがこれ。
SPRING INITIALIZRです。
ほんとチャチャッとよろしくしてくれます!
サイトのトップビュー↓
ここに Gradle Project
、 言語に Kotlin
を指定します。
Spring Bootのバージョンと、Project Metadata
は任意に設定してください。
次に Dependencies
にお好みの項目を選択しちゃってください。
(自分は、とりあえず Web
を選択。ま、ここはあとで追加できるので気軽に)
最後に Generate Project
を押下すればProjectがzipファイルでダウンロードできます!
IntelliJでインポートからローカルサーバー起動
1. ダウンロードしたzipファイルを解凍
2. IntelliJを開き、 Open
を押し、解凍したプロジェクトを選択
3. 次に表示されるViewで OK
を選択
4. build.gradle
を編集
IntelliJで開発するために、以下ファイルの1.と2.を追加しましょう
buildscript { ext { kotlinVersion = '1.1.3-2' springBootVersion = '1.5.6.RELEASE' } repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}") classpath("org.jetbrains.kotlin:kotlin-allopen:${kotlinVersion}") } } apply plugin: 'kotlin' apply plugin: 'kotlin-spring' apply plugin: 'eclipse' // 1. 追加 apply plugin: 'idea' apply plugin: 'org.springframework.boot' version = '0.0.1-SNAPSHOT' sourceCompatibility = 1.8 compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } repositories { mavenCentral() } dependencies { compile('org.springframework.boot:spring-boot-starter-web') compile("org.jetbrains.kotlin:kotlin-stdlib-jre8:${kotlinVersion}") compile("org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}") testCompile('org.springframework.boot:spring-boot-starter-test') } // 2. 追加 idea { module { inheritOutputDirs = false outputDir = file("$buildDir/classes/main/") } }
5. ./gradlew idea
を実行
ターミナルにて、階層はプロジェクト直下で実行しましょう
6. サンプルファイル作成
src > main > kotlin > 【Project Metadataで設定したパッケージ】
配下に新規でkotlinのファイルを作成します。
内容はとりあえずこんな感じ
package 【Project Metadataで設定したパッケージ】 import org.springframework.web.bind.annotation.GetMapping import org.springframework.web.bind.annotation.PathVariable import org.springframework.web.bind.annotation.RestController @RestController class GreetingController { @GetMapping("/hello/{name}") fun get(@PathVariable name: String) = "Hello, $name" }
7. ./gradlew bootRun
でローカルサーバー起動
これで、http://localhost:8080/hello/world
にアクセス以下のように Hello World
と画面に表示されれば完成です!
さいごに
今回は、とりあえずプロジェクトを作成するまでを紹介しました。
ミニマムで開発したいとか、最初に色々つまづきたくない場合は非常に便利だと思います!