import Ġorg . spongepowered . gradle . plugin . config . Plugin Lo aders Ċ import Ġorg . spongepowered . plugin . metadata . model . Plugin Dependency Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġ` java - library ` ĊĠĠĠ Ġkotlin (" jvm ") ĊĠĠĠ Ġid (" com . github . john ren gel man . shadow ") ĊĠĠĠ Ġid (" org . spongepowered . gradle . plugin ") Ġversion Ġ" 2 . 0 . 0 " Ċ } Ċ Ċ group Ġ= Ġ" fi . jon iar om aa " Ċ version Ġ= Ġ" 1 . 0 - SNAPSHOT " ĊĊ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġimplementation ( project (": bounc er - common ")) ĊĊĠĠĠ Ġruntime Only (" io . grpc : grpc - netty : 1 . 3 8 . 1 ") Ċ } Ċ Ċ sponge Ġ{ ĊĠĠĠ ĠapiVersion (" 8 . 0 . 0 - SNAPSHOT ") ĊĠĠĠ Ġlicense (" MIT ") ĊĠĠĠ Ġloader Ġ{ ĊĠĠĠĠĠĠĠ Ġname ( Plugin Lo aders . JAVA _ PLAIN ) ĊĠĠĠĠĠĠĠ Ġversion (" 1 . 0 ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġplugin (" bounc er ") Ġ{ ĊĠĠĠĠĠĠĠ ĠdisplayName (" Bo unc er ") ĊĠĠĠĠĠĠĠ Ġentry point (" fi . jon iar om aa . bounc er . sponge . Sp onge Bo unc er Plugin ") ĊĠĠĠĠĠĠĠ Ġdescription (" A Ġload Ġbalancer Ġfor ĠMinecraft Ġservers ") ĊĠĠĠĠĠĠĠ Ġlinks Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhomepage (" https :// github . com / Qu ut io / Bo unc er ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsource (" https :// github . com / Qu ut io / Bo unc er ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġissues (" https :// github . com / Qu ut io / Bo unc er / issues ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontributor (" J oni ĠA rom aa Ġ( is ok issa 3 )") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription (" Lead ĠDeveloper ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontributor (" Mat ias ĠPa av il ain en Ġ( M asa )") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription (" Lead ĠDeveloper ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdependency (" sponge api ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġload Order ( Plugin Dependency . Load Order . AFTER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoptional ( false ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġjava Target Ġ= Ġ 8 Ġ// ĠSp onge Ġtargets Ġa Ġminimum Ġof ĠJava Ġ 8 Ċ java Ġ{ ĊĠĠĠ Ġsource Compatibility Ġ= ĠJava Version . to Version ( java Target ) ĊĠĠĠ Ġtarget Compatibility Ġ= ĠJava Version . to Version ( java Target ) Ċ } Ċ Ċ tasks . with Type ( Java Compile :: class ). configure Each Ġ{ ĊĠĠĠ Ġoptions . apply Ġ{ ĊĠĠĠĠĠĠĠ Ġencoding Ġ= Ġ" utf - 8 " Ġ// ĠCons istent Ġsource Ġfile Ġencoding ĊĠĠĠĠĠĠĠ Ġif Ġ( Java Version . current (). is Java 1 0 Compatible ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelease . set ( java Target ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ // ĠMake Ġsure Ġall Ġtasks Ġwhich Ġproduce Ġarch ives Ġ( jar , Ġsources Ġjar , Ġjavadoc Ġjar , Ġetc ) Ġproduce Ġmore Ġconsistent Ġoutput Ċ tasks . with Type ( Abstract Archive Task :: class ). configure Each Ġ{ ĊĠĠĠ Ġis Re pro duc ible File Order Ġ= Ġtrue ĊĠĠĠ Ġis Preserve File Timestamp s Ġ= Ġfalse Ċ } Ċ Ċ tasks . create < com . github . jen gel man . gradle . plugins . shadow . tasks . Configure Shadow Re location >(" re locate Shadow Jar ") Ġ{ ĊĠĠĠ Ġtarget Ġ= Ġtasks [" shadow Jar "] Ġas Ġcom . github . jen gel man . gradle . plugins . shadow . tasks . Shadow Jar ĊĠĠĠ Ġprefix Ġ= Ġ" fi . jon iar om aa . bounc er . libs " Ċ } Ċ Ċ tasks . with Type < com . github . jen gel man . gradle . plugins . shadow . tasks . Shadow Jar > Ġ{ ĊĠĠĠ Ġdepends On ( tasks [" re locate Shadow Jar "]) ĊĊĠĠĠ Ġmerge Service Files () Ċ } Ċ Ċ tasks . named (" assemble "). configure Ġ{ ĊĠĠĠ Ġdepends On (" shadow Jar ") Ċ }