11buildscript {
22 repositories {
3- maven { url( " https://files.minecraftforge.net/maven" ) }
4- maven { url( " https://libraries.minecraft.net" ) }
5- maven { url( " https://plugins.gradle.org/m2/" ) }
3+ maven { url " https://files.minecraftforge.net/maven" }
4+ maven { url " https://libraries.minecraft.net" }
5+ maven { url " https://plugins.gradle.org/m2/" }
66 jcenter()
77 mavenCentral()
88 }
99 dependencies {
10- classpath(
11- group : " net.minecraftforge.gradle" ,
12- name : " ForgeGradle" ,
13- version : forge_gradle_version,
14- changing : true
15- )
16- classpath(
17- " org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version "
18- )
19- classpath(
20- " org.jetbrains.kotlin:kotlin-serialization:$kotlin_version "
21- )
22- classpath(
23- " org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version "
24- )
10+ classpath group : ' net.minecraftforge.gradle' , name : ' ForgeGradle' , version : forge_gradle_version, changing : true
11+ classpath " org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version "
12+ classpath " org.jetbrains.kotlin:kotlin-serialization:$kotlin_version "
13+ classpath " org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version "
2514 }
2615}
2716
28- apply(plugin : " org.jetbrains.dokka" )
29- apply(plugin : " net.minecraftforge.gradle" )
30- apply(plugin : " kotlin" )
31- apply(plugin : " kotlinx-serialization" )
17+ plugins {
18+ id " maven-publish"
19+ id " java-library"
20+ }
21+
22+ apply plugin : " org.jetbrains.dokka"
23+ apply plugin : " net.minecraftforge.gradle"
24+ apply plugin : " kotlin"
25+ apply plugin : " kotlinx-serialization"
3226
33- version = module_version
27+ version = module_version as Object
3428group = " com.mairwunnx.$module_id "
3529archivesBaseName = module_name
3630
3731configurations {
38- embed
39- compile . extendsFrom(embed)
32+ internal
33+ implementation . extendsFrom internal
4034}
4135
4236minecraft {
43- accessTransformer = file(' src/main/resources/META-INF/accesstransformer.cfg' )
44-
45- mappings(
46- channel : forge_mappings_channel_type,
47- version : forge_mappings_channel_version
48- )
37+ accessTransformer = file ' src/main/resources/META-INF/accesstransformer.cfg'
38+ mappings channel : forge_mappings_channel_type, version : forge_mappings_channel_version
4939
5040 runs {
5141 client {
52- // noinspection GroovyAssignabilityCheck
53- workingDirectory(project. file(dev_run_client_path))
54- property(" forge.logging.markers" , " SCAN,REGISTRIES,REGISTRYDUMP" )
55- property(" forge.logging.console.level" , " debug" )
56- mods {
57- ProjectEssentialsCore {
58- // noinspection GroovyAssignabilityCheck
59- source(sourceSets. main)
60- }
61- }
42+ property " forge.logging.markers" , " SCAN,REGISTRIES,REGISTRYDUMP"
43+ property " forge.logging.console.level" , " debug"
44+ mods { ProjectEssentialsCore { source sourceSets. main } }
45+ workingDirectory project. file(dev_run_client_path as Object )
6246 }
63-
6447 server {
65- // noinspection GroovyAssignabilityCheck
66- workingDirectory(project. file(dev_run_server_path))
67- property(" forge.logging.markers" , " SCAN,REGISTRIES,REGISTRYDUMP" )
68- property(" forge.logging.console.level" , " debug" )
69- mods {
70- ProjectEssentialsCore {
71- // noinspection GroovyAssignabilityCheck
72- source(sourceSets. main)
73- }
74- }
48+ property " forge.logging.markers" , " SCAN,REGISTRIES,REGISTRYDUMP"
49+ property " forge.logging.console.level" , " debug"
50+ mods { ProjectEssentialsCore { source sourceSets. main } }
51+ workingDirectory project. file(dev_run_server_path as Object )
7552 }
7653 }
7754}
7855
7956repositories {
8057 jcenter()
8158 mavenCentral()
82- maven { url( " https://libraries.minecraft.net" ) }
83- maven { url( " https://jitpack.io" ) }
59+ maven { url " https://libraries.minecraft.net" }
60+ maven { url " https://jitpack.io" }
8461}
8562
8663dependencies {
87- minecraft(group : " net.minecraftforge" , name : " forge" , version : forge_version)
88- compile(group : " com.mojang" , name : " brigadier" , version : brigadier_version)
89- compile(
90- group : " org.jetbrains.kotlinx" ,
91- name : " kotlinx-serialization-runtime" ,
92- version : kotlinx_serialization_version
93- )
94- embed(
95- group : " org.jetbrains.kotlinx" ,
96- name : " kotlinx-serialization-runtime" ,
97- version : kotlinx_serialization_version
98- )
99- compile(
100- group : " org.jetbrains.kotlin" ,
101- name : " kotlin-stdlib-$kotlin_jdk_version_target " ,
102- version : kotlin_version
103- )
104- embed(
105- group : " org.jetbrains.kotlin" ,
106- name : " kotlin-stdlib-$kotlin_jdk_version_target " ,
107- version : kotlin_version
108- )
109- compile(
110- group : " com.github.projectessentials" ,
111- name : " ProjectEssentials-Permissions" ,
112- version : permissions_version
113- )
114- compile(
115- group : " com.github.projectessentials" ,
116- name : " ProjectEssentials-Cooldown" ,
117- version : cooldown_version
118- )
119- compile group : ' org.json' , name : ' json' , version : ' 20190722'
120- embed group : ' org.json' , name : ' json' , version : ' 20190722'
64+ minecraft " net.minecraftforge:forge:$forge_version "
65+ implementation " com.mojang:brigadier:$brigadier_version "
66+ internal " org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlinx_serialization_version "
67+ internal " org.jetbrains.kotlin:kotlin-stdlib-$kotlin_jdk_version_target :$kotlin_version "
68+ internal " com.github.projectessentials:ProjectEssentials-Permissions:$permissions_version "
69+ internal " com.github.projectessentials:ProjectEssentials-Cooldown:$cooldown_version "
70+ internal " org.json:json:$json_version "
12171}
12272
12373dokka {
12474 outputFormat = ' html'
12575 outputDirectory = " $buildDir /libs/docs"
12676}
12777
128- project. tasks[" jar" ]. dependsOn(project. tasks[" dokka" ])
129-
13078task modJar (type : Jar ) {
13179 with tasks. jar
132- from configurations. embed. collect { it. isDirectory() ? it : zipTree(it) }
80+ from configurations. internal. collect { it. isDirectory() ? it : zipTree(it) }
81+
13382 manifest {
13483 attributes([
13584 " Specification-Title" : module_name,
@@ -141,11 +90,9 @@ task modJar(type: Jar) {
14190 " Implementation-Timestamp" : new Date (). format(" yyyy-MM-dd'T'HH:mm:ssZ" )
14291 ])
14392 }
144- // noinspection GrDeprecatedAPIUsage
145- baseName = project. name + ' -MOD'
146- }
14793
148- project. tasks[" modJar" ]. dependsOn(project. tasks[" jar" ])
94+ baseName = module_name + ' -MOD'
95+ }
14996
15097jar {
15198 manifest {
@@ -159,8 +106,8 @@ jar {
159106 " Implementation-Timestamp" : new Date (). format(" yyyy-MM-dd'T'HH:mm:ssZ" )
160107 ])
161108 }
162- // noinspection GrDeprecatedAPIUsage
163- baseName = project . name + ' -API'
109+
110+ baseName = module_name + ' -API'
164111}
165112
166113reobf {
@@ -170,9 +117,38 @@ reobf {
170117 }
171118}
172119
120+ project. tasks[" jar" ]. dependsOn project. tasks[" dokka" ]
121+ project. tasks[" modJar" ]. dependsOn project. tasks[" jar" ]
122+
173123sourceCompatibility = targetCompatibility =
174124 compileJava. sourceCompatibility =
175125 compileJava. targetCompatibility = project_jvm_version_target
176126
177127compileKotlin. kotlinOptions. jvmTarget =
178128 compileTestKotlin. kotlinOptions. jvmTarget = project_jvm_version_target
129+
130+ task dokkaJar (type : Jar ) {
131+ group = JavaBasePlugin . DOCUMENTATION_GROUP
132+ description = " Assembles Kotlin docs with Dokka"
133+ classifier = " javadoc"
134+ from tasks. dokka as Object
135+ }
136+
137+ publishing {
138+ repositories {
139+ maven {
140+ name = " GitHubPackages"
141+ url = uri " https://maven.pkg.github.com/projectessentials/projectessentials-core"
142+ credentials {
143+ username = System . getenv(" GradleUser" )
144+ password = System . getenv(" GradlePass" )
145+ }
146+ }
147+ }
148+ publications {
149+ gpr(MavenPublication ) {
150+ from components. java
151+ artifact dokkaJar
152+ }
153+ }
154+ }
0 commit comments