package Ġcity . smart b . fix ers . gradle . kotlin Ċ Ċ import Ġcity . smart b . fix ers . gradle . config . Config Plugin Ċ import Ġcity . smart b . gradle . config . fix ers Ċ import Ġcity . smart b . gradle . config . model . J dk Ċ import Ġcity . smart b . gradle . dependencies . Fix ers Dependencies Ċ import Ġorg . gradle . api . Java Version Ċ import Ġorg . gradle . api . Plugin Ċ import Ġorg . gradle . api . Project Ċ import Ġorg . gradle . api . plugins . Java Plugin Ċ import Ġorg . gradle . api . plugins . Java Plugin Extension Ċ import Ġorg . gradle . api . tasks . Source Set Container Ċ import Ġorg . gradle . api . tasks . testing . Test Ċ import Ġorg . gradle . jvm . tasks . Jar Ċ import Ġorg . gradle . jvm . toolchain . Java Language Version Ċ import Ġorg . gradle . kotlin . dsl .* Ċ import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ Ċ @ Suppress (" Un stable Api Usage ") Ċ class ĠJ vm Plugin Ġ: ĠPlugin < Project > Ġ{ ĊĊ ĉ override Ġfun Ġapply ( target : ĠProject ) Ġ{ Ċĉ ĉ configure Jvm Compilation ( target ) Ċ ĉ } ĊĊ ĉ private Ġfun Ġconfigure Jvm Compilation ( target : ĠProject ) Ġ{ Ċĉ ĉ target . apply ( plugin Ġ= Ġ" java ") Ċĉ ĉ target . apply ( plugin Ġ= Ġ" org . jetbrains . kotlin . jvm ") Ċĉ ĉ target . plugins . apply ( Config Plugin :: class . java ) Ċĉ ĉ val Ġfix ers Config Ġ= Ġtarget . extensions . fix ers ĊĊĉ ĉ val Ġj dk Version Ġ= Ġfix ers Config ?. jdk ?. version Ġ?: ĠJ dk . VERSION _ DEFAULT Ċĉ ĉ target . tasks . with Type < Kotlin Compile >(). configure Each Ġ{ Ċĉĉ ĉ println (" Config uring Ġ$ name Ġin Ġproject Ġ${ project . name } ...") Ċĉĉ ĉ kotlin Options Ġ{ Ċĉĉĉ ĉ free Compiler Args Ġ= ĠlistOf ("- X js r 3 0 5 = strict ", Ġ Ġ"- X opt - in = kotlin . js . Experimental Js Export ") Ċĉĉĉ ĉ jvm Target Ġ= Ġj dk Version . toString () Ċĉĉ ĉ } Ċĉ ĉ } Ċĉ ĉ target . plugins . with Type ( Java Plugin :: class . java ). when Plugin Added Ġ{ Ċĉĉ ĉ target . extensions . configure ( Java Plugin Extension :: class . java ) Ġ{ Ċĉĉĉ ĉ toolchain . language Version . set ( Java Language Version . of ( jdk Version )) Ċĉĉ ĉ } Ċĉ ĉ } ĊĊĉ ĉ target . dependencies Ġ{ Ċĉĉ ĉ add (" implementation ", Ġkotlin (" reflect ")) Ċĉĉ ĉ Fix ers Dependencies . Jvm . Kotlin . coroutines { Ċĉĉĉ ĉ add (" implementation ", Ġit ) Ċĉĉ ĉ } Ċĉĉ ĉ Fix ers Dependencies . Jvm . Test . junit { Ċĉĉĉ ĉ add (" test Implementation ", Ġit ) Ċĉĉ ĉ } Ċĉ ĉ } ĊĊĉ ĉ target . tasks . with Type < Test > Ġ{ Ċĉĉ ĉ use JUnit Platform () Ċĉ ĉ } ĊĊ ĉ } Ċ Ċ } Ċ