11import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2+ import com.github.jengelman.gradle.plugins.shadow.transformers.PropertiesFileTransformer
23
34plugins {
45 id ' java-library'
56 id ' idea'
7+ id ' eclipse'
68 id ' maven-publish'
79 alias libs. plugins. licenser
810 alias libs. plugins. gradleutils
911 alias libs. plugins. shadow
1012}
1113
12- final projectDisplayName = ' Java Version '
14+ final projectDisplayName = ' Java Provisioner '
1315final projectVendor = ' Forge Development LLC'
14- description = ' Java Version management using Disco'
16+ description = ' A tool that locates, and if nessasary, downloads a Java distribution using Disco'
1517group = ' net.minecraftforge'
1618version = gitversion. tagOffset
1719
@@ -20,7 +22,7 @@ println "Version: $version"
2022java {
2123 // Currently JOpt is the limiting, requiring java 8
2224 // But also toolchains don't support building for anything lower then 8
23- toolchain. languageVersion = JavaLanguageVersion . of 8
25+ toolchain. languageVersion = JavaLanguageVersion . of( 8 )
2426 withSourcesJar()
2527}
2628
@@ -62,8 +64,8 @@ license {
6264tasks. named(' jar' , Jar ) {
6365 manifest {
6466 attributes([
65- ' Main-Class' : ' net.minecraftforge.java_version .Main' ,
66- ' Automatic-Module-Name' : ' net.minecraftforge.java_version ' ,
67+ ' Main-Class' : ' net.minecraftforge.java_provisioner .Main' ,
68+ ' Automatic-Module-Name' : ' net.minecraftforge.java_provisioner ' ,
6769 ' Sealed' : true
6870 ])
6971 attributes([
@@ -73,15 +75,20 @@ tasks.named('jar', Jar) {
7375 ' Implementation-Title' : projectDisplayName,
7476 ' Implementation-Vendor' : projectVendor,
7577 ' Implementation-Version' : project. version
76- ], ' net/minecraftforge/java_version /' )
78+ ], ' net/minecraftforge/java_provisioner /' )
7779 }
7880
7981 from createJavaProbeClass. outputs. files
8082}
8183
8284tasks. named(' shadowJar' , ShadowJar ) {
8385 enableRelocation = true
84- relocationPrefix = ' net.minecraftforge.java_version.shadow'
86+ relocationPrefix = ' net.minecraftforge.java_provisioner.shadow'
87+ // Rewrite JOpt's message files, so that help text is displayed nicely.
88+ transform(PropertiesFileTransformer ) {
89+ paths = [ ' Messages.properties$' ]
90+ keyTransformer = { key -> relocationPrefix. get() + ' .' + key }
91+ }
8592}
8693
8794tasks. withType(JavaCompile ). configureEach {
@@ -120,4 +127,8 @@ publishing {
120127 }
121128}
122129
130+ eclipse {
131+ synchronizationTasks javaProbeJar
132+ }
133+
123134idea. module { downloadJavadoc = downloadSources = true }
0 commit comments