import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġj aco co ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 3 . 7 1 " ĊĠĠĠ Ġ` java - library ` ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġid (" org . jetbrains . dok ka ") Ġversion Ġ" 1 . 4 . 3 2 " ĊĠĠĠ Ġid (" org . j mail en . kot linter ") Ġversion Ġ" 2 . 3 . 2 " ĊĠĠĠ Ġid (" org . ow asp . dependency check ") Ġversion Ġ" 5 . 3 . 2 . 1 " Ċ } Ċ Ċ group Ġ= Ġ" com . thought works . in spac " Ċ Ċ base Ġ{ ĊĠĠĠ Ġarch ives Base Name Ġ= Ġ" com . thought works . in spac . sdk " Ċ } Ċ Ċ apply Ġ{ ĊĠĠĠ Ġfrom (" gradle / jac oco . gradle ") Ċ } Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġj center () Ċ } Ċ Ċ base Ġ{ ĊĠĠĠ Ġarch ives Base Name Ġ= Ġ" com . thought works . in spac . sdk " Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġimplementation ( platform ( kotlin (" bom "))) ĊĠĠĠ Ġimplementation ( kotlin (" stdlib - jdk 8 ")) ĊĠĠĠ Ġimplementation (" org . springframework : spring - web : 5 . 2 . 6 . RELEASE ") ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . core : jackson - databind : 2 . 1 1 . 0 ") ĊĠĠĠ Ġimplementation (" com . nim bus ds : nim bus - j ose - jwt : 8 . 1 9 ") ĊĠĠĠ Ġimplementation (" org . bouncycastle : b cp k ix - jdk 1 5 on : 1 . 6 5 ") ĊĠĠĠ Ġtest Implementation (" org . junit . jupiter : junit - jupiter : 5 . 6 . 2 ") ĊĠĠĠ Ġtest Implementation (" io . mock k : mock k : 1 . 1 0 . 0 ") Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" GitHub Packages " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl Ġ= Ġuri (" https :// maven . pkg . github . com / thought works / in Sp ac ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcredentials Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġusername Ġ= Ġproject . find Property (" github . package . user ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" USERNAME ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpassword Ġ= Ġproject . find Property (" github . package . key ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" TOKEN ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublications Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate < Maven Publication >(" maven Java ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgroupId Ġ= Ġ" com . thought works . in spac " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġartifact Id Ġ= Ġ" sdk " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġversion Ġ= Ġproject . find Property (" in spac . version ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" IN SP AC _ SDK _ VERSION ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ( components [" java "]) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . test Ġ{ ĊĠĠĠ Ġuse JUnit Platform () ĊĠĠĠ Ġtest Logging Ġ{ ĊĠĠĠĠĠĠĠ Ġevents (" passed ", Ġ" skipped ", Ġ" failed ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . with Type < Kotlin Compile > Ġ{ ĊĠĠĠ Ġkotlin Options Ġ{ ĊĠĠĠĠĠĠĠ Ġj vm Target Ġ= Ġ" 1 . 8 " ĊĠĠĠ Ġ} ĊĠĠĠ Ġdepends On (" format Kotlin ", Ġ" lint Kotlin ", Ġ" init Git Hooks ") Ċ } Ċ Ċ tasks . register < Copy >(" init Git Hooks ") Ġ{ ĊĠĠĠ Ġfrom (" config / g ith ooks ") ĊĠĠĠ Ġinto ("./ . git / hooks ") ĊĠĠĠ Ġ// Ġset Ġfile Ġmode Ġas Ġ 7 5 5 ĊĠĠĠ Ġfile Mode Ġ= Ġ 0 b 0 0 0 _ 1 1 1 _ 1 0 1 _ 1 0 1 Ċ } Ċ tasks . test Ġ{ ĊĠĠĠ Ġfinal ized By ( tasks . jac oco Test Report ) Ġ// Ġreport Ġis Ġalways Ġgenerated Ġafter Ġtests Ġrun Ċ } Ċ Ċ tasks . jac oco Test Report Ġ{ ĊĠĠĠ Ġreports Ġ{ ĊĠĠĠĠĠĠĠ Ġxml . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġcsv . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġhtml . destination Ġ= Ġfile ("${ build Dir }/ jac oco Html ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġdepends On ( tasks . test ) Ġ// Ġtests Ġare Ġrequired Ġto Ġrun Ġbefore Ġgenerating Ġthe Ġreport Ċ }