import ĠPublish ing . repo Url For Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġkotlin (" multi platform ") ĊĠĠĠ Ġid (" com . android . library ") ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġsigning Ċ } Ċ Ċ group Ġ= ĠPublish ing . groupId Ċ version Ġ= ĠPublish ing . version Ġ?: Ġ" 0 . 1 . 0 " Ċ description Ġ= Ġ" Pre - built Ġprimitive Ġtype Ġserializers Ġfor ĠWatch ĠConnection ĠLibrary " Ċ Ċ kotlin Ġ{ ĊĠĠĠ Ġexplicit Api () ĊĊĠĠĠ Ġandroid Ġ{ ĊĠĠĠĠĠĠĠ Ġpublish Library Variants (" release ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsource Sets Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcommon Main Ġby Ġgetting Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdependencies Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapi ( projects . common ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġcommon Test Ġby Ġgetting Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdependencies Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation ( kotlin (" test ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation ( libs . tur bine ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġandroid Main Ġby Ġgetting Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdependencies Ġ{ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġandroid Test Ġby Ġgetting Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdependencies Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation ( kotlin (" test - junit ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ android Ġ{ ĊĠĠĠ Ġcompile Sdk Ġ= ĠS dk . target ĊĠĠĠ Ġsource Sets [" main "]. manifest . src File (" src / android Main / Android Manifest . xml ") ĊĠĠĠ Ġdefault Config Ġ{ ĊĠĠĠĠĠĠĠ Ġmin Sdk Ġ= ĠS dk . min ĊĠĠĠĠĠĠĠ Ġtarget Sdk Ġ= ĠS dk . target ĊĠĠĠĠĠĠĠ Ġconsumer Pro guard File (" pro guard - rules . pro ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . with Type < org . jetbrains . kotlin . gradle . tasks . Kotlin Compile >(). configure Each Ġ{ ĊĠĠĠ Ġkotlin Options Ġ{ ĊĠĠĠĠĠĠĠ Ġfree Compiler Args Ġ= Ġfree Compiler Args Ġ+ Ġ"- X opt - in = kotlin . Requires Opt In " ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . k over Verify Ġ{ ĊĠĠĠ Ġrule Ġ{ ĊĠĠĠĠĠĠĠ Ġname Ġ= Ġ" 8 0 % ĠCoverage " ĊĠĠĠĠĠĠĠ Ġbound Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmin Value Ġ= Ġ 8 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Type Ġ= Ġkotlinx . k over . api . Verification ValueType . COVER ED _ LINES _ PERCENT AGE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ // ĠCreate Ġsigning Ġconfig Ċ ext [" signing . key Id "] Ġ= ĠPublish ing . signing KeyId Ċ ext [" signing . password "] Ġ= ĠPublish ing . signing Password Ċ ext [" signing . secret Key Ring File "] Ġ= ĠPublish ing . signing SecretKey ring Ċ signing Ġ{ ĊĠĠĠ Ġsign ( publishing . publications ) Ċ } Ċ Ċ after Evaluate Ġ{ ĊĠĠĠ Ġpublishing Ġ{ ĊĠĠĠĠĠĠĠ Ġpublications . with Type < Maven Publication > Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġpom Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname . set ( this @ after Evaluate . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription . set ( this @ after Evaluate . description ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl . set ( repo Url For (" serialization ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicenses ( Publishing . licenses ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdevelopers ( Publishing . developers ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsc m ( Publishing . scm ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrepositories ( Publishing . repositories ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ