forked from cbeust/klaxon
-
Notifications
You must be signed in to change notification settings - Fork 0
/
klaxon-root.gradle.kts
98 lines (79 loc) · 2.5 KB
/
klaxon-root.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
buildscript {
repositories {
mavenCentral()
jcenter()
maven {
setUrl("http://oss.sonatype.org/content/repositories/snapshots")
}
}
dependencies {
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${property("kotlin.version")}")
}
}
plugins {
id("com.jfrog.bintray") version "1.2"
`maven-publish`
}
val kotlinVersion = property("kotlin.version").toString()
allprojects {
version = "3.0.8"
group = "com.beust"
repositories {
mavenCentral()
jcenter()
maven {
setUrl("http://oss.sonatype.org/content/repositories/snapshots")
}
}
}
// Projects that will be published.
val publishedProjects = setOf(
project(":klaxon")
) + project(":plugins").subprojects
// Projects that contain source code.
val sourceProjects =
publishedProjects + project(":testing").subprojects
configure(sourceProjects) {
apply {
plugin("java-library")
plugin("kotlin")
}
dependencies {
"api"("org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion")
"api"("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
"testImplementation"("org.testng:testng:6.13.1")
"testImplementation"("org.jetbrains.kotlin:kotlin-test:$kotlinVersion")
"testImplementation"("org.assertj:assertj-core:3.5.2")
}
tasks.withType<Test>().configureEach {
useTestNG()
testLogging {
events(TestLogEvent.FAILED, TestLogEvent.PASSED, TestLogEvent.SKIPPED, TestLogEvent.STARTED)
displayGranularity = 0
showExceptions = true
showCauses = true
showStackTraces = true
exceptionFormat = TestExceptionFormat.FULL
}
}
}
configure(publishedProjects) {
apply(from = rootProject.file("gradle/publishing.gradle"))
tasks.register<Jar>("sourceJar") {
group = LifecycleBasePlugin.BUILD_GROUP
description = "An archive of the source code"
classifier = "sources"
from(java.sourceSets["main"].allSource)
}
}
tasks.withType<Wrapper>().configureEach {
gradleVersion = "4.10"
distributionType = Wrapper.DistributionType.ALL
}
/**
* Retrieves the [java][org.gradle.api.plugins.JavaPluginConvention] project convention.
*/
val Project.java: org.gradle.api.plugins.JavaPluginConvention
get() = convention.getPluginByName("java")