build.gradle

Summary

Maintainability
Test Coverage
plugins {
id "org.jetbrains.kotlin.multiplatform" version "1.3.72"
id "maven-publish"
id "jacoco"
//id "org.jetbrains.dokka" version "0.10.0"
}
 
repositories {
mavenCentral()
}
 
group = "guru.zoroark"
version = "0.1-SNAPSHOT"
 
kotlin {
jvm()
js {
browser {
}
nodejs {
}
}
 
sourceSets {
all {
languageSettings {
useExperimentalAnnotation("kotlin.RequiresOptIn")
}
}
commonMain {
dependencies {
implementation kotlin('stdlib-common')
}
}
 
commonTest {
dependencies {
implementation kotlin('test-common')
implementation kotlin('test-annotations-common')
}
}
 
jvmMain {
dependencies {
implementation kotlin('stdlib-jdk8')
implementation "org.jetbrains:annotations:18.0.0"
}
}
 
jvmTest {
dependencies {
implementation kotlin('test-junit')
}
}
 
nonJvmMain {
dependsOn commonMain
}
 
jsMain {
dependencies {
implementation kotlin('stdlib-js')
}
dependsOn nonJvmMain
}
 
jsTest {
dependencies {
implementation kotlin('test-js')
}
}
}
}
 
task jacocoTestReport(type: JacocoReport) {
executionData jvmTest
reports {
xml.enabled = true
}
classDirectories.setFrom(fileTree("${buildDir}/classes/kotlin/jvm/main"))
sourceDirectories.setFrom(
kotlin.sourceSets["commonMain"].kotlin.sourceDirectories,
kotlin.sourceSets["jvmMain"].kotlin.sourceDirectories
)
}