blob: 9fff8917e98e5b15cb3f4528970dfc13cc7e607d (
plain)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
plugins {
id 'java-library'
id 'maven-publish'
id 'eclipse'
id 'net.minecrell.licenser' version '0.3'
id 'org.ajoberstar.grgit' version '4.1.0'
}
group = 'net.minecraftforge'
version = (grgit.describe(longDescr: true, tags: true) ?: 'unknown-unknown-unknown').split('-').with { "${it[0]}.${it[1]}" }
println('Version: ' + version + ' Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch'))
sourceSets {
api
shared
gradlecomp
}
repositories {
jcenter()
mavenCentral()
maven {
url = 'https://maven.minecraftforge.net'
}
}
configurations {
sharedImplementation.extendsFrom apiImplementation
gradlecompImplementation.extendsFrom sharedImplementation
compile.extendsFrom sharedImplementation
compile.extendsFrom gradlecompImplementation
}
dependencies {
sharedImplementation sourceSets.api.output
gradlecompImplementation sourceSets.shared.output
gradlecompImplementation gradleApi()
gradlecompImplementation 'com.google.guava:guava:30.1-jre'
gradlecompImplementation 'net.minecraftforge:unsafe:0.2.0'
compile sourceSets.api.output
compile sourceSets.shared.output
compile sourceSets.gradlecomp.output
}
tasks.withType(JavaCompile) {
options.encoding = 'utf-8'
options.deprecation = true
}
java {
toolchain.languageVersion = JavaLanguageVersion.of(8)
}
jar {
from sourceSets.api.output
from sourceSets.shared.output
from(sourceSets.gradlecomp.output)
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.api.allSource
from sourceSets.shared.allSource
from sourceSets.gradlecomp.allSource
}
license {
header = file("$rootDir/LICENSE-header.txt")
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
artifact tasks.sourcesJar
pom {
groupId = project.group
version = project.version
artifactId = project.archivesBaseName
name = project.archivesBaseName
packaging = 'jar'
description = 'A Gradle artifact processing and management tool'
url = 'https://github.com/MinecraftForge/Artifactural/'
scm {
url = 'https://github.com/MinecraftForge/Artifactural/'
connection = 'scm:git:git://github.com/MinecraftForge/Artifactural.git'
developerConnection = 'scm:git:git@github.com:MinecraftForge/Artifactural.git'
}
issueManagement {
system = 'github'
url = 'https://github.com/MinecraftForge/Artifactural/issues'
}
licenses {
license {
name = 'LGPL-2.1'
url = 'https://www.gnu.org/licenses/lgpl-2.1.txt'
distribution = 'repo'
}
}
}
}
}
repositories {
maven {
if (System.env.MAVEN_USER) {
url 'https://maven.minecraftforge.net/'
authentication {
basic(BasicAuthentication)
}
credentials {
username = System.env.MAVEN_USER ?: 'not'
password = System.env.MAVEN_PASSWORD ?: 'set'
}
} else {
url 'file://' + rootProject.file('repo').getAbsolutePath()
}
}
}
}
|