Usando o plugin ktlint de estilo de código em um projeto Kotlin. Um guia rápido para um desenvolvedor de back-end

Sou um desenvolvedor Java / Kotlin na EPAM.





No primeiro artigo falei sobre o meu projeto - Brain-Up . Neste artigo, quero compartilhar minha experiência na configuração do plug- in ktlint para um projeto Kotlin.





Este plugin ajuda a garantir um estilo de código consistente em todo o projeto. Ele se baseia nas diretrizes oficiais de formatação de código Kotlin da JetBrains. Usando esta ferramenta, você pode não apenas verificar o código, mas também formatá-lo.





Enquanto eu estava configurando o ktlint, estava procurando informações, uma descrição, e me pareceu que pouca atenção foi dada ao tópico de configuração desse plugin nos comentários, e as respostas às perguntas que apareceram não eram óbvias. 





Portanto, decidi compartilhar minha experiência, espero que alguém ache úteis as instruções passo a passo para se conectar ao projeto. Este exemplo é relevante para um projeto no Kotlin 1.4, gradle 6.0. 





#1. Adicionar dependência a build.gradle por plugin

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



# 2. Adicionando uma tarefa 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