-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
105 lines (91 loc) · 2.49 KB
/
build.gradle
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
97
98
99
100
101
102
103
104
105
plugins {
id 'java-library'
id 'maven-publish'
id "com.gradle.plugin-publish" version "1.2.2"
id 'java-gradle-plugin'
id("dev.minco.gradle.defaults-plugin") version "0.2.67"
}
sourceSets.main.java.srcDirs = files('src')
sourceSets.test.java.srcDirs = files('test')
group = 'dev.minco.mapping'
version = '0.0.1-SNAPSHOT'
minimallyCorrectDefaults {
languageLevel = JavaVersion.VERSION_11
// TODO: make relevant?
description = ""
configureProject(project)
}
repositories {
maven {
url 'https://maven.fabricmc.net/'
name 'fabricmc'
content {
includeGroup("net.fabricmc")
}
}
mavenCentral()
}
dependencies {
compileOnly "org.jetbrains:annotations:24.1.0"
compileOnly "org.checkerframework:checker-qual:3.47.0"
testImplementation "junit:junit:4.13.2"
// TODO: actually test Mixin at the same time
//api 'org.minimallycorrect.mixin:Mixin:0.0.6'
implementation 'net.fabricmc:tiny-remapper:0.10.4'
implementation 'net.fabricmc:tiny-mappings-parser:0.3.0+build.17'
implementation 'com.google.guava:guava:33.3.0-jre'
compileOnly 'org.projectlombok:lombok:1.18.34'
annotationProcessor 'org.projectlombok:lombok:1.18.34'
testCompileOnly 'org.projectlombok:lombok:1.18.34'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.34'
// https://junit.org/junit5/docs/current/user-guide/#running-tests-build
testImplementation("org.junit.jupiter:junit-jupiter-api:5.11.0")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.11.0")
}
test {
useJUnitPlatform()
}
allprojects {
tasks.withType(Test).all {
maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
}
configurations {
all {
resolutionStrategy {
failOnVersionConflict()
force('org.checkerframework:checker-qual:3.47.0')
force('com.google.guava:guava:33.3.0-jre')
force('com.google.code.findbugs:jsr305:3.0.2')
def asmVer = '9.7'
force("org.ow2.asm:asm:$asmVer")
force("org.ow2.asm:asm-tree:$asmVer")
force("org.ow2.asm:asm-analysis:$asmVer")
force("org.ow2.asm:asm-util:$asmVer")
}
}
}
}
gradlePlugin {
plugins {
mapping {
id = 'dev.minco.mapping'
implementationClass = 'dev.minco.mapping.Plugin'
displayName = 'Mapping'
}
}
}
pluginBundle {
website = 'https://minco.dev/'
vcsUrl = 'https://github.com/MinimallyCorrect/Mapping'
// TODO: defaults plugin should copy those over
description = 'TODO'
tags = ['TODO']
}
publishing {
publications {
pluginMaven(MavenPublication) {
// sources weren't attached by default? /shrug
artifact sourcesJar
}
}
}