Menggunakan plugin ktlint bergaya kode dalam proyek Kotlin. Panduan cepat untuk pengembang backend

Saya adalah pengembang Java / Kotlin di EPAM.





Di artikel pertama saya berbicara tentang proyek saya - Brain-Up . Pada artikel ini, saya ingin berbagi pengalaman saya dalam menyiapkan plugin ktlint untuk proyek Kotlin.





Plugin ini membantu memastikan gaya kode yang konsisten di seluruh proyek. Ini dibuat berdasarkan pedoman pemformatan kode Kotlin resmi dari JetBrains. Dengan menggunakan alat ini, Anda tidak hanya dapat memeriksa kode, tetapi juga memformatnya.





Saat saya menyiapkan ktlint, saya mencari informasi, deskripsi, dan menurut saya sedikit perhatian diberikan pada topik konfigurasi plugin ini di ulasan, dan jawaban atas pertanyaan yang muncul tidak jelas. 





Oleh karena itu, saya memutuskan untuk membagikan pengalaman saya, saya berharap seseorang akan menemukan petunjuk langkah demi langkah untuk menghubungkan ke proyek berguna. Contoh ini relevan untuk proyek di Kotlin 1.4, gradle 6.0. 





#satu. Tambahkan ketergantungan ke build.gradle per plugin

dependencies {    
    ktlint "com.pinterest:ktlint:0.38.0"
}
      
      



# 2. Menambahkan tugas gradle `ktlintFormat`

   , ..  , / - , . 





task ktlintFormat(type: JavaExec, group: "formatting") 
{
    description = "Fix Kotlin code style deviations."    
    classpath = configurations.ktlint    
    main = "com.pinterest.ktlint.Main"    
    args "-F", "src/*/.kt"
}
      
      



#3. gradle `ktlint`

project.task("ktlint", type: JavaExec) {    
    group = "verification"    
    description = "Runs ktlint."    
    main = "com.pinterest.ktlint.Main"    
    classpath = project.configurations.ktlint    
    args = [            
        "--reporter=plain",            
        "--reporter=checkstyle,output=${project.buildDir}/reports/ktlint/ktlint-checkstyle-report.xml",            
        "src/*/.kt"    ]
}
      
      



#4. `ktlint`

compileKotlin.dependsOn ktlint
      
      



.  , ,  .     . 





  ,   , ,  . 





.





#5. Idea

File -> Settings -> Code Style -> Kotlin.





#6.

.





 Ctrl+Alt+L,   Idea  . ,  Idea, . 





.





 Idea     ―   ktlintFormat —  .





#7.

-   , ,     .editorconfig







,  . , , ,  ,   Ctrl+Alt+L 



    ktlintFormat 



 , . 





[*.{kt,kts}]
disabled_rules = import-ordering
      
      



   build.gradle  . 2- , . 





, , / code style Kotlin , —  , :  , , . 





, , Open Source Brain-up,     ,  . 





       Sonar Cloud Kotlin ,     , .  












All Articles