IntelliJ IDEAのフォーマットにktlintのルールを適用させる

はじめに

ktlintを使ってフォーマットや静的解析をしながら開発を進めているのですが、IntelliJ IDEAのフォーマットとktlintのフォーマットが異なっており困っていました。

ktlint-gradleというgradleプラグインからktlintのフォーマットルールをIntelliJ IDEAのフォーマットに設定してくれる機能を見つけたので紹介します。

前提

  • ktlint 0.30.0
  • ktlint-gradle 7.1.0

手順

導入

まず、gradleにktlintとktlint-gradleプラグインの設定を追加します。

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "org.jlleitschuh.gradle:ktlint-gradle:7.1.0"
    }
}

apply plugin: "org.jlleitschuh.gradle.ktlint"

repositories {
    jcenter()
    mavenCentral()
}
configurations {
    ktlint
}

dependencies {
    ktlint "com.github.shyiko:ktlint:0.30.0"
}

gradleのtaskの実行

ktlint-gradleプラグインを導入するといくつかタスクが追加されます。以下のタスクがフォーマットルールをIntelliJ IDEAに適用させるものです。

  • ktlintApplyToIdea 現在のプロジェクトに適用させる(.idea/フォルダの設定を上書き)
  • ktlintApplyToIdeaGlobally すべてのプロジェクトに適用させる(ユーザホームのIDEAの設定を上書き)

ここでは「ktlintApplyToIdea」タスクを実行させて反映させます。

$ gradle ktlintApplyToIdea

以下のような結果が出力されたら成功です。
バージョンが異なったりするとエラーが発生するので、エラーがでたらバージョンを確認してみてください。

> Task :ktlintApplyToIdea
(updated)

Please restart your IDE
(if you experience any issues please report them at https://github.com/shyiko/ktlint)

まとめ

KtlintのフォーマットルールをIntelliJ IDEAに取り込む方法を紹介しました。簡単に設定を追加できるので便利ですね。


--------------------------
システム開発のご要望・ご相談はこちらから

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です