/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 2 2 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . gradle . plugin . internal Ċ Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . artifacts . maven . Conf 2 Scope Mapping Container Ċ import Ġorg . gradle . api . artifacts . maven . Maven P om Ċ import Ġorg . gradle . api . artifacts . maven . Maven Resolver Ċ import Ġorg . gradle . api . plugins . Maven Plugin Convention Ċ import Ġorg . gradle . api . provider . Provider Ċ import Ġorg . gradle . api . tasks . Upload Ċ import Ġorg . jetbrains . kotlin . gradle . plugin . mpp . Abstract Kotlin Target Ċ import Ġorg . jetbrains . kotlin . gradle . plugin . mpp . P om Dependencies Rew riter Ċ Ċ @ Suppress (" DE PREC ATION ") Ċ class ĠMaven Plugin Configurator G 6 Ġ: ĠMaven Plugin Configurator Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġapply Configuration ( ĊĠĠĠĠĠĠĠ Ġproject : ĠProject , ĊĠĠĠĠĠĠĠ Ġtarget : ĠAbstract Kotlin Target , ĊĠĠĠĠĠĠĠ Ġshould Rewrite P oms : ĠProvider < Boolean > ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġproject . plugin Manager . with Plugin (" maven ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproject . tasks . with Type ( Upload :: class . java ). all Ġ{ Ġupload Task Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupload Task . repositories . with Type ( Maven Resolver :: class . java ). all Ġ{ Ġmaven Resolver Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpom Rew riter Ġ= ĠP om Dependencies Rew riter ( project , Ġtarget . kotlin Components . single ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrewrite P om ( maven Resolver . pom , Ġpom Rew riter , Ġshould Rewrite P oms ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSetup Ġconf 2 Scope Mappings Ġso Ġthat Ġthe ĠAPI Ġdependencies Ġare Ġwritten Ġwith Ġthe Ġcompile Ġscope Ġin Ġthe ĠPO Ms Ġin Ġcase Ġof Ġ' java ' Ġplugin ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproject . convention . get Plugin ( Maven Plugin Convention :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. conf 2 Scope Mappings . add Mapping ( 0 , Ġproject . configurations . get ByName (" api "), ĠConf 2 Scope Mapping Container . COMPILE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġrewrite P om ( ĊĠĠĠĠĠĠĠ Ġpom : ĠMaven P om , ĊĠĠĠĠĠĠĠ Ġre writer : ĠP om Dependencies Rew riter , ĊĠĠĠĠĠĠĠ Ġshould Rewrite P om : ĠProvider < Boolean > ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġpom . with Xml Ġ{ Ġxml Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( should Rewrite P om . get ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre writer . rewrite P om M pp Dependencies To Actual Target Modules ( xml ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠGradle 6 Maven Plugin Configurator Variant Factory Ġ: ĠMaven Plugin Configurator . Maven Plugin Configurator Variant Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetInstance (): ĠMaven Plugin Configurator Ġ= ĠMaven Plugin Configurator G 6 () ĊĠĠĠ Ġ} Ċ }