Repository navigation
Expand file tree
/
Copy pathbuild.gradle
More file actions
92 lines (77 loc) · 2.23 KB
/
Copy pathbuild.gradle
File metadata and controls
92 lines (77 loc) · 2.23 KB
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
import org.gradle.api.file.DuplicatesStrategy
plugins {
id 'org.jetbrains.kotlin.jvm' version '2.0.0'
id 'me.champeau.jmh' version '0.7.3'
id 'maven-publish'
}
group = 'com.github.xenonbyte'
version = "2.0.0"
base {
archivesName = 'ObjectPool'
}
repositories {
mavenCentral()
maven { url "https://jitpack.io" }
}
java {
withSourcesJar()
withJavadocJar()
}
dependencies {
testImplementation "org.jetbrains.kotlin:kotlin-test-junit5:2.0.0"
}
kotlin {
jvmToolchain(17)
}
tasks.test {
useJUnitPlatform()
}
tasks.register('benchmarkObjectPool', JavaExec) {
group = 'verification'
description = 'Runs a local object pool benchmark without external dependencies.'
dependsOn testClasses
classpath = sourceSets.test.runtimeClasspath
mainClass = 'com.github.xenonbyte.ObjectPoolBenchmarkKt'
jvmArgs '-Xms512m', '-Xmx512m'
}
jmh {
warmupIterations = 1
iterations = 2
fork = 1
warmup = '1s'
timeOnIteration = '2s'
benchmarkMode = ['thrpt']
resultFormat = 'JSON'
duplicateClassesStrategy = DuplicatesStrategy.EXCLUDE
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
artifactId = 'ObjectPool'
pom {
name = 'ObjectPool'
description = 'A lightweight Kotlin/JVM object reuse pool with diagnostics and benchmark coverage.'
url = 'https://github.com/xubo90/ObjectPool'
licenses {
license {
name = 'The Apache License, Version 2.0'
url = 'https://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
developers {
developer {
id = 'xubo'
name = 'xubo'
email = 'bennyxu1990@hotmail.com'
}
}
scm {
connection = 'scm:git:https://github.com/xubo90/ObjectPool.git'
developerConnection = 'scm:git:ssh://git@github.com/xubo90/ObjectPool.git'
url = 'https://github.com/xubo90/ObjectPool'
}
}
}
}
}