Skip to content

Commit 68125da

Browse files
committed
Rename to Java Provisioner
Fix shadow issues Enable github workflows
1 parent c601e73 commit 68125da

File tree

17 files changed

+133
-60
lines changed

17 files changed

+133
-60
lines changed

.github/workflows/publish.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Publish
2+
3+
on:
4+
push:
5+
branches: [ "master" ]
6+
paths-ignore:
7+
- '.github/workflows/**'
8+
- 'README.md'
9+
- 'settings.gradle'
10+
11+
permissions:
12+
contents: read
13+
14+
jobs:
15+
build:
16+
uses: MinecraftForge/SharedActions/.github/workflows/gradle.yml@v0
17+
with:
18+
java: 8
19+
gradle_tasks: "check publish"
20+
artifact_name: "java-provisioner"
21+
secrets:
22+
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
23+
PROMOTE_ARTIFACT_WEBHOOK: ${{ secrets.PROMOTE_ARTIFACT_WEBHOOK }}
24+
PROMOTE_ARTIFACT_USERNAME: ${{ secrets.PROMOTE_ARTIFACT_USERNAME }}
25+
PROMOTE_ARTIFACT_PASSWORD: ${{ secrets.PROMOTE_ARTIFACT_PASSWORD }}
26+
MAVEN_USER: ${{ secrets.MAVEN_USER }}
27+
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
28+
GRADLE_CACHE_KEY: ${{ secrets.GRADLE_CACHE_KEY }}

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## Java Provisioner
2+
3+
A tool that locates, and if nessasary, downloads a Java distribution using Disco

build.gradle

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2+
import com.github.jengelman.gradle.plugins.shadow.transformers.PropertiesFileTransformer
23

34
plugins {
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'
1315
final 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'
1517
group = 'net.minecraftforge'
1618
version = gitversion.tagOffset
1719

@@ -20,7 +22,7 @@ println "Version: $version"
2022
java {
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 {
6264
tasks.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

8284
tasks.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

8794
tasks.withType(JavaCompile).configureEach {
@@ -120,4 +127,8 @@ publishing {
120127
}
121128
}
122129

130+
eclipse {
131+
synchronizationTasks javaProbeJar
132+
}
133+
123134
idea.module { downloadJavadoc = downloadSources = true }

settings.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ dependencyResolutionManagement {
2424
}
2525
}
2626

27-
rootProject.name = 'java-version'
27+
rootProject.name = 'java-provisioner'

src/main/java/net/minecraftforge/java_version/Disco.java renamed to src/main/java/net/minecraftforge/java_provisioner/Disco.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.io.BufferedWriter;
88
import java.io.ByteArrayInputStream;
@@ -26,7 +26,6 @@
2626
import java.util.Locale;
2727
import java.util.Map;
2828
import java.util.Set;
29-
import java.util.TreeMap;
3029
import java.util.zip.GZIPInputStream;
3130
import java.util.zip.ZipEntry;
3231
import java.util.zip.ZipFile;
@@ -35,6 +34,9 @@
3534
import com.google.gson.TypeAdapter;
3635
import com.google.gson.internal.bind.TypeAdapters;
3736
import com.google.gson.stream.JsonWriter;
37+
38+
import net.minecraftforge.java_provisioner.util.OS;
39+
import net.minecraftforge.java_provisioner.util.ProcessUtils;
3840
import net.minecraftforge.util.download.DownloadUtils;
3941
import net.minecraftforge.util.hash.HashFunction;
4042
import net.minecraftforge.util.logging.Log;
@@ -49,9 +51,6 @@
4951
import com.google.gson.reflect.TypeToken;
5052
import com.google.gson.stream.JsonReader;
5153

52-
import net.minecraftforge.java_version.util.OS;
53-
import net.minecraftforge.java_version.util.ProcessUtils;
54-
5554
/**
5655
* A client for the <a href="https://github.com/foojayio/discoapi">foojay disco API</a>
5756
* <p>

src/main/java/net/minecraftforge/java_version/DiscoLocator.java renamed to src/main/java/net/minecraftforge/java_provisioner/DiscoLocator.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.io.File;
88
import java.util.ArrayList;
99
import java.util.Collections;
1010
import java.util.List;
1111

12-
import net.minecraftforge.java_version.Disco.Arch;
13-
import net.minecraftforge.java_version.api.IJavaInstall;
14-
import net.minecraftforge.java_version.util.OS;
12+
import net.minecraftforge.java_provisioner.Disco.Arch;
13+
import net.minecraftforge.java_provisioner.api.IJavaInstall;
14+
import net.minecraftforge.java_provisioner.util.OS;
1515

1616
/**
1717
* Locates java installs that have been downloaded from the <a href="https://github.com/foojayio/discoapi">disco API</a>

src/main/java/net/minecraftforge/java_version/DiscoMain.java renamed to src/main/java/net/minecraftforge/java_provisioner/DiscoMain.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.io.File;
88
import java.util.Arrays;
@@ -12,8 +12,8 @@
1212
import joptsimple.OptionSet;
1313
import joptsimple.OptionSpec;
1414
import joptsimple.util.EnumConverter;
15-
import net.minecraftforge.java_version.util.OS;
16-
import net.minecraftforge.java_version.util.ProcessUtils;
15+
import net.minecraftforge.java_provisioner.util.OS;
16+
import net.minecraftforge.java_provisioner.util.ProcessUtils;
1717
import net.minecraftforge.util.logging.Log;
1818

1919
public class DiscoMain {
@@ -22,6 +22,8 @@ public static void main(String[] args) throws Exception {
2222
parser.allowsUnrecognizedOptions();
2323
OptionSpec<Void> helpO = parser.accepts("help", "Displays this help message and exits");
2424

25+
parser.accepts("disco-main", "Instructs the executable jar to use the DiscoMain entry point");
26+
2527
OptionSpec<File> cacheO = parser.accepts("cache",
2628
"Directory to store data needed for this program")
2729
.withRequiredArg().ofType(File.class).defaultsTo(new File("cache"));

src/main/java/net/minecraftforge/java_version/GradleLocator.java renamed to src/main/java/net/minecraftforge/java_provisioner/GradleLocator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.io.File;
88
import java.io.IOException;
@@ -11,8 +11,8 @@
1111
import java.util.List;
1212
import java.util.regex.Pattern;
1313

14-
import net.minecraftforge.java_version.api.IJavaInstall;
15-
import net.minecraftforge.java_version.util.OS;
14+
import net.minecraftforge.java_provisioner.api.IJavaInstall;
15+
import net.minecraftforge.java_provisioner.util.OS;
1616

1717
/*
1818
* Attempts to find the java install using various tools that Gradle uses

src/main/java/net/minecraftforge/java_version/JavaHomeLocator.java renamed to src/main/java/net/minecraftforge/java_provisioner/JavaHomeLocator.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.io.File;
88
import java.util.ArrayList;
99
import java.util.List;
1010

11-
import net.minecraftforge.java_version.api.IJavaInstall;
12-
import net.minecraftforge.java_version.api.IJavaLocator;
13-
import net.minecraftforge.java_version.util.OS;
14-
import net.minecraftforge.java_version.util.ProcessUtils;
11+
import net.minecraftforge.java_provisioner.api.IJavaInstall;
12+
import net.minecraftforge.java_provisioner.api.IJavaLocator;
13+
import net.minecraftforge.java_provisioner.util.OS;
14+
import net.minecraftforge.java_provisioner.util.ProcessUtils;
1515

1616
/*
1717
* Attempts to find the java install using the JAVA_HOME environment variable.

src/main/java/net/minecraftforge/java_version/JavaVersion.java renamed to src/main/java/net/minecraftforge/java_provisioner/JavaVersion.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Copyright (c) Forge Development LLC and contributors
33
* SPDX-License-Identifier: LGPL-2.1-only
44
*/
5-
package net.minecraftforge.java_version;
5+
package net.minecraftforge.java_provisioner;
66

77
import java.util.ArrayList;
88
import java.util.List;

0 commit comments

Comments
 (0)