import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 6 . 2 1 " ĊĊĠĠĠ Ġid (" com . github . g ma zz o . build config ") Ġversion Ġ" 3 . 0 . 3 " ĊĊĠĠĠ Ġid (" java - gradle - plugin ") ĊĠĠĠ Ġid (" maven - publish ") ĊĠĠĠ Ġid (" signing ") ĊĠĠĠ Ġid (" com . gradle . plugin - publish ") Ġversion Ġ" 0 . 2 1 . 0 " ĊĊĠĠĠ Ġid (" io . gitlab . art urb os ch . de te kt ") Ġversion Ġ" 1 . 2 0 . 0 " Ċ } Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġimplementation ( kotlin (" gradle - plugin ")) ĊĠĠĠ Ġimplementation ( kotlin (" stdlib ")) Ċ } Ċ Ċ tasks . with Type < Java Compile >(). configure Each Ġ{ ĊĠĠĠ Ġoptions . release . set ( 8 ) Ċ } Ċ Ċ tasks . with Type < Kotlin Compile >(). configure Each Ġ{ ĊĠĠĠ Ġkotlin Options Ġ{ ĊĠĠĠĠĠĠĠ Ġj vm Target Ġ= Ġ" 1 . 8 " ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġartifact Id : ĠString Ġby Ġproject Ċ val Ġplugin Id Ġ= Ġ"$ group .$ artifactId " Ċ Ċ ext [" gradle . publish . key "] Ġ= Ġproperty (" gradle Publish Key ") Ġas ĠString Ċ ext [" gradle . publish . secret "] Ġ= Ġproperty (" gradle Publish Secret ") Ġas ĠString Ċ Ċ build Config Ġ{ ĊĠĠĠ ĠpackageName . set ( plugin Id ) ĊĠĠĠ Ġbuild Config Field (" String ", Ġ" GROUP _ ID ", Ġ"\" $ group \" ") ĊĠĠĠ Ġbuild Config Field (" String ", Ġ" AR TI FACT _ ID ", Ġ"\" $ artifactId \" ") ĊĠĠĠ Ġbuild Config Field (" String ", Ġ" PLUGIN _ ID ", Ġ"\" $ plugin Id \" ") ĊĠĠĠ Ġbuild Config Field (" String ", Ġ" VERSION ", Ġ"\" $ version \" ") Ċ } Ċ Ċ plugin Bundle Ġ{ ĊĠĠĠ Ġval Ġpublication Url : ĠString Ġby Ġproject ĊĠĠĠ Ġval Ġpublication Sc m Url : ĠString Ġby Ġproject ĊĠĠĠ Ġval Ġpublication Tags : ĠString Ġby Ġproject ĊĠĠĠ Ġwebsite Ġ= Ġpublication Url ĊĠĠĠ Ġv cs Url Ġ= Ġpublication Sc m Url ĊĠĠĠ Ġtags Ġ= Ġpublication Tags . split (',') Ċ } Ċ Ċ gradle Plugin Ġ{ ĊĠĠĠ Ġval Ġresources Ġby Ġplugins . creating Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpublication DisplayName : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġval Ġpublication Description : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġid Ġ= Ġplugin Id ĊĠĠĠĠĠĠĠ ĠdisplayName Ġ= Ġpublication DisplayName ĊĠĠĠĠĠĠĠ Ġdescription Ġ= Ġpublication Description ĊĠĠĠĠĠĠĠ Ġimplementation Class Ġ= Ġ" com . gon cal oss il va . use any browser . Use Any Browser Plugin " ĊĠĠĠ Ġ} Ċ } Ċ Ċ signing Ġ{ ĊĠĠĠ Ġ// ĠUse Ġ` signing Key ` Ġand Ġ` signing Password ` Ġproperties Ġto Ġsign Ġartifacts , Ġif Ġprovided . ĊĠĠĠ Ġ// ĠOtherwise , Ġdefault Ġto Ġ` signing . key Id `, Ġ` signing . password ` Ġand Ġ` signing . secret Key Ring File `. ĊĠĠĠ Ġval Ġsigning Key : ĠString ? Ġby Ġproject ĊĠĠĠ Ġval Ġsigning Password : ĠString ? Ġby Ġproject ĊĠĠĠ Ġif Ġ( signing Key Ġ!= Ġnull Ġ&& Ġsigning Password Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġuse InMemory P gp Keys ( signing Key , Ġsigning Password ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġsign ( publishing . publications ) Ċ } Ċ Ċ tasks . named (" publish ") Ġ{ ĊĠĠĠ Ġdepends On (" publish Plugins ") Ċ } Ċ Ċ gradle . task Graph . when Ready Ġ{ ĊĠĠĠ Ġval Ġfrom Ġ= ĠFile ("${ root Project . rootDir }/ config / de te kt / pre - commit ") ĊĠĠĠ Ġval Ġto Ġ= ĠFile ("${ root Project . rootDir }/. git / hooks / pre - commit ") ĊĠĠĠ Ġfrom . copy To ( to , Ġoverwrite Ġ= Ġtrue ) ĊĠĠĠ Ġto . set Executable ( true ) Ċ } Ċ