val Ġkotlin Version : ĠString Ġby Ġproject Ċ val Ġgu ava Version : ĠString Ġby Ġproject Ċ val Ġjunit Version : ĠString Ġby Ġproject Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġjava ĊĠĠĠ Ġkotlin (" jvm ") ĊĠĠĠ Ġid (" java - library ") ĊĠĠĠ Ġid (" org . jetbrains . dok ka ") Ġversion Ġ" 1 . 4 . 3 2 " ĊĠĠĠ Ġid (" pl . al leg ro . tech . build . ax ion - release ") ĊĠĠĠ Ġid (" maven - publish ") ĊĠĠĠ Ġid (" io . github . gradle - nexus . publish - plugin ") Ġversion (" 1 . 0 . 0 ") ĊĠĠĠ Ġid (" signing ") ĊĠĠĠ Ġid (" jac oco ") Ċ } Ċ Ċ scm Version Ġ{ ĊĠĠĠ Ġtag . prefix Ġ= Ġ" tab ulate " ĊĠĠĠ Ġtag . version Separator Ġ= Ġ"-" Ċ } Ċ Ċ version Ġ= Ġsc m Version . version Ċ Ċ all projects Ġ{ ĊĠĠĠ Ġgroup Ġ= Ġ" io . github . voy tech " ĊĠĠĠ Ġversion Ġ= Ġroot Project . version ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Central () ĊĠĠĠĠĠĠĠ Ġj center () ĊĠĠĠ Ġ} Ċ } Ċ Ċ configure ( ĊĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġproject (": tab ulate - core "), ĊĠĠĠĠĠĠĠ Ġproject (": tab ulate - excel "), ĊĠĠĠĠĠĠĠ Ġproject (": tab ulate - csv "), ĊĠĠĠĠĠĠĠ Ġproject (": tab ulate - test ") ĊĠĠĠ Ġ) Ċ ) Ġ{ ĊĠĠĠ Ġapply ( plugin Ġ= Ġ" org . jetbrains . kotlin . jvm ") ĊĠĠĠ Ġapply ( plugin Ġ= Ġ" maven - publish ") ĊĠĠĠ Ġapply ( plugin Ġ= Ġ" java - library ") ĊĠĠĠ Ġapply ( plugin Ġ= Ġ" org . jetbrains . dok ka ") ĊĠĠĠ Ġapply ( plugin Ġ= Ġ" jac oco ") ĊĠĠĠ Ġdependencies Ġ{ ĊĠĠĠĠĠĠĠ Ġimplementation ( kotlin (" stdlib ", Ġkotlin Version )) ĊĠĠĠĠĠĠĠ Ġtest Implementation (" org . jetbrains . kotlin "," kotlin - test ", Ġkotlin Version ) ĊĠĠĠĠĠĠĠ Ġtest Implementation ( platform (" org . junit : junit - bom :$ junit Version ")) ĊĠĠĠĠĠĠĠ Ġtest Implementation (" org . junit . jupiter "," junit - jupiter ") ĊĠĠĠĠĠĠĠ Ġtest Runtime Only (" org . jetbrains . kotlin "," kotlin - reflect ", Ġkotlin Version ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġj aco co Ġ{ ĊĠĠĠĠĠĠĠ Ġtool Version Ġ= Ġ" 0 . 8 . 7 " ĊĠĠĠ Ġ} ĊĠĠĠ Ġconfigurations . all Ġ{ ĊĠĠĠĠĠĠĠ Ġresolution Strategy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeach Dependency Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(" org . jac oco " Ġ== Ġthis . requested . group ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuse Version (" 0 . 8 . 7 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġtasks Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuse JUnit Platform () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtest Logging Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents (" passed ", Ġ" skipped ", Ġ" failed ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinal ized By ( jac oco Test Report ) Ġ// Ġreport Ġis Ġalways Ġgenerated Ġafter Ġtests Ġrun ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġregister < Jar >(" dok ka Javadoc Jar ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ("$ build Dir / dok ka / javadoc ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdepends On (" dok ka Javadoc ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarchive Classifier . set (" javadoc ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġj aco co Test Report Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdepends On ( test ) Ġ// Ġtests Ġare Ġrequired Ġto Ġrun Ġbefore Ġgenerating Ġthe Ġreport ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreports Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġxml . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġxml . destination Ġ= Ġfile ("${ build Dir }/ reports / jac oco / report . xml ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhtml . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġjava Ġ{ ĊĠĠĠĠĠĠĠ Ġwith Sources Jar () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublishing Ġ{ ĊĠĠĠĠĠĠĠ Ġpublications Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate < Maven Publication >(" tab ulate ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ( components [" java "]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġartifact ( tasks [" dok ka Javadoc Jar "]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpom Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set ( project . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription . set (" Kotlin / JVM Ġlibrary Ġto Ġsimplify Ġexporting Ġcollections Ġof Ġobjects Ġinto Ġtab ular Ġfile Ġformats ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set (" https :// github . com / voy tech / tab ulate ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġin ception Year . set (" 2 0 2 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicenses Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicense Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set (" The ĠApache ĠLicense , ĠVersion Ġ 2 . 0 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set (" http :// www . apache . org / licenses / LICENSE - 2 . 0 . txt ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdevelopers Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid . set (" voy tech ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set (" Wo jc ie ch ĠM Äħ ka ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsc m Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set (" https :// github . com / voy tech / tab ulate ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconnection . set (" scm : git @ github . com : voy tech / tab ulate . git ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper Connection . set (" scm : git @ github . com : voy tech / tab ulate . git ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ nexus Publishing Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġson atype Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusername . set ( System . getenv (" SON AT YPE _ USERNAME ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpassword . set ( System . getenv (" SON AT YPE _ PASSWORD ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn exus Url . set ( uri (" https :// s 0 1 . oss . son atype . org / service / local / ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsnapshot Repository Url . set ( uri (" https :// s 0 1 . oss . son atype . org / content / repositories / snapshots / ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ if Ġ( System . getenv (" G PG _ KEY _ ID ") Ġ!= Ġnull ) Ġ{ ĊĠĠĠ Ġprintln ( System . getenv (" G PG _ KEY _ ID ")) ĊĠĠĠ Ġsigning Ġ{ ĊĠĠĠĠĠĠĠ Ġuse InMemory P gp Keys ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . getenv (" G PG _ KEY _ ID "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . getenv (" G PG _ PRIVATE _ KEY "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . getenv (" G PG _ PRIVATE _ KEY _ PASSWORD ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġprintln (" Signing ") ĊĠĠĠĠĠĠĠ Ġsign ( publishing . publications ) ĊĠĠĠĠĠĠĠ Ġprintln (" Signed ") ĊĠĠĠ Ġ} Ċ } Ċ