plugins Ġ{ ĊĠĠĠ Ġ` java - library ` ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġj aco co ĊĠĠĠ Ġid (" com . github . john ren gel man . shadow ") Ġversion Ġ" 7 . 0 . 0 " Ċ } Ċ Ċ group Ġ= Ġ" ro x tools " Ċ version Ġ= Ġ" 1 . 8 . 5 " Ċ Ċ java Ġ{ ĊĠĠĠ Ġtoolchain Ġ{ ĊĠĠĠĠĠĠĠ Ġlanguage Version . set ( Java Language Version . of ( 1 1 )) ĊĠĠĠ Ġ} ĊĠĠĠ Ġwith Sources Jar () Ċ } Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Local () ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġval Ġfilters Version : ĠString Ġby Ġproject ĊĠĠĠ Ġval Ġs lf 4 j Version : ĠString Ġby Ġproject ĊĠĠĠ Ġval Ġjava Ass ist Version : ĠString Ġby Ġproject ĊĠĠĠ Ġval Ġjunit Version : ĠString Ġby Ġproject ĊĊĠĠĠ Ġapi (" com . j hl abs : filters :$ filters Version ") ĊĠĠĠ Ġapi (" org . slf 4 j : slf 4 j - api :$ slf 4 j Version ") ĊĠĠĠ Ġapi (" org . jav assist : jav assist :$ java Ass ist Version ") ĊĊĠĠĠ Ġtest Implementation ( platform (" org . junit : junit - bom :$ junit Version ")) ĊĠĠĠ Ġtest Implementation (" org . junit . jupiter : junit - jupiter - api ") ĊĠĠĠ Ġtest Implementation (" org . junit . jupiter : junit - jupiter - params ") ĊĠĠĠ Ġtest Runtime Only (" org . junit . jupiter : junit - jupiter - engine ") ĊĊĠĠĠ Ġtest Implementation (" org . slf 4 j : slf 4 j - simple :$ slf 4 j Version ") Ċ } Ċ Ċ tasks . register < Test >(" tests On 1 6 ") Ġ{ ĊĠĠĠ Ġjava Launcher . set ( java Tool chains . launcher For Ġ{ ĊĠĠĠĠĠĠĠ Ġlanguage Version . set ( Java Language Version . of ( 1 6 )) ĊĠĠĠ Ġ}) Ċ } Ċ Ċ tasks . register < Test >(" tests On 1 7 ") Ġ{ ĊĠĠĠ Ġjava Launcher . set ( java Tool chains . launcher For Ġ{ ĊĠĠĠĠĠĠĠ Ġlanguage Version . set ( Java Language Version . of ( 1 7 )) ĊĠĠĠ Ġ}) Ċ } Ċ Ċ tasks . register < Test >(" tests On 1 8 ") Ġ{ ĊĠĠĠ Ġjava Launcher . set ( java Tool chains . launcher For Ġ{ ĊĠĠĠĠĠĠĠ Ġlanguage Version . set ( Java Language Version . of ( 1 8 )) ĊĠĠĠ Ġ}) Ċ } Ċ Ċ tasks . with Type < Test > Ġ{ ĊĠĠĠ Ġuse JUnit Platform () Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġpublications Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate < Maven Publication >(" library ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ( components . get ByName (" java ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġn exus Url : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġn exus Repository : ĠString Ġby Ġproject ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" nexus " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl Ġ= Ġuri ("${ nexus Url }/ repository /${ nexus Repository }/ ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcredentials ( Password Credentials :: class ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ