|
1 | 1 | plugins { |
2 | | - id 'java' |
| 2 | + id 'java-library' |
| 3 | + id 'idea' |
3 | 4 | id 'eclipse' |
4 | 5 | id 'maven-publish' |
5 | | - id 'org.cadixdev.licenser' version '0.6.1' |
6 | | - id 'net.minecraftforge.gradleutils' version '2.2.0' |
7 | | - id 'com.github.johnrengelman.shadow' version '2.0.4' |
| 6 | + id 'net.minecraftforge.licenser' version '1.1.1' |
| 7 | + id 'net.minecraftforge.gradleutils' version '2.4.4' |
| 8 | + id 'com.gradleup.shadow' version '8.3.6' |
8 | 9 | } |
9 | 10 |
|
10 | 11 | group = 'net.minecraftforge' |
11 | | -version = gradleutils.getTagOffsetVersion() |
12 | | -logger.lifecycle('Version: ' + version) |
13 | | -java.toolchain.languageVersion = JavaLanguageVersion.of(8) |
| 12 | +version = gitversion.version.tagOffset |
| 13 | +println "Version: $version" |
| 14 | + |
| 15 | +java { |
| 16 | + toolchain.languageVersion = JavaLanguageVersion.of(8) |
| 17 | + withSourcesJar() |
| 18 | +} |
14 | 19 |
|
15 | 20 | repositories { |
| 21 | + maven gradleutils.forgeMaven |
16 | 22 | mavenCentral() |
17 | 23 | } |
18 | 24 |
|
| 25 | +dependencies { |
| 26 | + implementation libs.bundles.asm |
| 27 | + implementation libs.jopt |
| 28 | + //Because tons of projects all paarsing SRG files is annoying |
| 29 | + api libs.srgutils |
| 30 | +} |
| 31 | + |
19 | 32 | changelog { |
20 | | - fromTag '2.0' |
| 33 | + from '2.0' |
21 | 34 | } |
22 | 35 |
|
23 | 36 | license { |
24 | | - header project.file('LICENSE-header.txt') |
25 | | - include '**/*.java' |
26 | | - newLine false |
| 37 | + header project.file('LICENSE-header.txt') |
| 38 | + include '**/*.java' |
| 39 | + newLine false |
27 | 40 | } |
28 | 41 |
|
29 | 42 | jar { |
30 | | - manifest.attributes('Main-Class': 'net.minecraftforge.mappingverifier.Main') |
31 | | - manifest.attributes('Implementation-Version': project.version) |
32 | | -} |
33 | | -shadowJar { |
34 | | - classifier 'fatjar' |
35 | | - manifest.attributes('Main-Class': 'net.minecraftforge.mappingverifier.Main') |
36 | | - manifest.attributes('Implementation-Version': project.version) |
| 43 | + manifest { |
| 44 | + // TODO [MappingVerifier] Make Main class fatjar only in 3.0? |
| 45 | + attributes(['Main-Class': 'net.minecraftforge.mappingverifier.Main'] as LinkedHashMap) |
| 46 | + |
| 47 | + attributes([ |
| 48 | + 'Specification-Title' : 'Mapping Verifier', |
| 49 | + 'Specification-Vendor' : 'Forge Development LLC', |
| 50 | + 'Specification-Version' : gitversion.version.info.tag, |
| 51 | + 'Implementation-Title' : 'Mapping Verifier', |
| 52 | + 'Implementation-Vendor' : 'Forge Development LLC', |
| 53 | + 'Implementation-Version': project.version |
| 54 | + ] as LinkedHashMap, 'net/minecraftforge/mappingverifier') |
| 55 | + } |
37 | 56 | } |
38 | 57 |
|
39 | | -task sourcesJar(type: Jar) { |
40 | | - archiveClassifier = 'sources' |
41 | | - from sourceSets.main.allSource |
| 58 | +tasks.named('shadowJar', com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar).configure { |
| 59 | + archiveClassifier = 'fatjar' |
42 | 60 | } |
43 | 61 |
|
44 | 62 | artifacts { |
45 | | - archives jar |
46 | 63 | archives shadowJar |
47 | 64 | } |
48 | 65 |
|
| 66 | +publishing { |
| 67 | + publications.register('mavenJava', MavenPublication) { |
| 68 | + from components.java |
49 | 69 |
|
50 | | -repositories { |
51 | | - maven { url = 'https://maven.minecraftforge.net/' } |
52 | | - mavenCentral() |
53 | | -} |
| 70 | + artifactId = 'mapping-verifier' |
| 71 | + changelog.publish(it) |
54 | 72 |
|
55 | | -dependencies { |
56 | | - implementation 'org.ow2.asm:asm:9.3' |
57 | | - implementation 'org.ow2.asm:asm-tree:9.3' |
58 | | - implementation 'org.ow2.asm:asm-util:9.3' |
59 | | - implementation 'net.sf.jopt-simple:jopt-simple:5.0.4' |
60 | | - //Because tons of projects all paarsing SRG files is annoying |
61 | | - implementation 'net.minecraftforge:srgutils:0.4.+' |
62 | | -} |
| 73 | + pom { |
| 74 | + name = 'MappingVerifier' |
| 75 | + description = 'Utility to verify mapping files do not mess up bytecode access/layout.' |
63 | 76 |
|
64 | | -publishing { |
65 | | - publications { |
66 | | - mavenJava(MavenPublication) { |
67 | | - artifact jar |
68 | | - artifact sourcesJar |
69 | | - artifact shadowJar |
70 | | - pom { |
71 | | - name = 'MappingVerifier' |
72 | | - description = 'Utility to verify mapping files do not mess up bytecode access/layout.' |
73 | | - url = 'https://github.com/MinecraftForge/MappingVerifier' |
74 | | - scm { |
75 | | - url = 'https://github.com/MinecraftForge/MappingVerifier' |
76 | | - connection = 'scm:git:git://github.com/MinecraftForge/MappingVerifier.git' |
77 | | - developerConnection = 'scm:git:git@github.com:MinecraftForge/MappingVerifier.git' |
78 | | - } |
79 | | - issueManagement { |
80 | | - system = 'github' |
81 | | - url = 'https://github.com/MinecraftForge/MappingVerifier/issues' |
82 | | - } |
83 | | - |
84 | | - licenses { |
85 | | - license { |
86 | | - name = 'LGPLv2.1' |
87 | | - url = 'https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt' |
88 | | - } |
89 | | - } |
90 | | - |
91 | | - developers { |
92 | | - developer { |
93 | | - id = 'LexManos' |
94 | | - name = 'LexManos' |
95 | | - } |
96 | | - } |
| 77 | + gradleutils.pom.gitHubDetails = pom |
| 78 | + |
| 79 | + license gradleutils.pom.licenses.LGPLv2_1 |
| 80 | + |
| 81 | + developers { |
| 82 | + gradleutils.pom.Developers.LexManos |
97 | 83 | } |
98 | 84 | } |
99 | 85 | } |
| 86 | + |
100 | 87 | repositories { |
101 | | - maven gradleutils.getPublishingForgeMaven() |
| 88 | + maven gradleutils.publishingForgeMaven |
102 | 89 | } |
103 | 90 | } |
| 91 | + |
| 92 | +idea.module { downloadSources = downloadJavadoc = true } |
0 commit comments