Skip to content

Commit fb27366

Browse files
committed
Updated
1 parent 9c2ff8e commit fb27366

3 files changed

Lines changed: 43 additions & 1 deletion

File tree

src/main/java/org/mangorage/mangobotgradle/MangoBotGradlePlugin.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.mangorage.mangobotgradle.core.TaskRegistry;
2929
import org.mangorage.mangobotgradle.tasks.DatagenTask;
3030
import org.mangorage.mangobotgradle.tasks.RunBotTask;
31+
import org.mangorage.mangobotgradle.tasks.RunInstallerAndBootTask;
3132
import org.mangorage.mangobotgradle.tasks.RunInstallerTask;
3233
import org.mangorage.mangobotgradle.tasks.SetupPluginsTask;
3334

@@ -63,6 +64,11 @@ public MangoBotGradlePlugin() {
6364
RunBotTask.class,
6465
cfg
6566
);
67+
t.register(
68+
cfg.getName() + "ViaInstaller",
69+
RunInstallerAndBootTask.class,
70+
cfg
71+
);
6672
});
6773
});
6874
}

src/main/java/org/mangorage/mangobotgradle/tasks/RunBotTask.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ public RunBotTask(RunConfig runConfig) {
2424

2525
setWorkingDir(getProject().file("build/run/"));
2626
setArgs(runConfig.getArgs());
27-
getMainClass().set("");
2827

2928
// Create your module path from the config
3029
FileCollection modulePath = getProject().getConfigurations().getByName("bootstrap");
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package org.mangorage.mangobotgradle.tasks;
2+
3+
import org.gradle.api.Task;
4+
import org.gradle.api.file.FileCollection;
5+
import org.gradle.api.tasks.JavaExec;
6+
import org.mangorage.mangobotgradle.RunConfig;
7+
8+
import javax.inject.Inject;
9+
import java.util.ArrayList;
10+
import java.util.List;
11+
12+
public abstract class RunInstallerAndBootTask extends JavaExec {
13+
@Inject
14+
public RunInstallerAndBootTask(RunConfig runConfig) {
15+
setGroup(runConfig.getGroup());
16+
setDescription("Runs the bot");
17+
18+
ArrayList<Task> deps = new ArrayList<>(getProject().getTasksByName("copyTask", false));
19+
20+
setDependsOn(deps);
21+
mustRunAfter(deps);
22+
23+
setWorkingDir(getProject().file("build/run/"));
24+
setArgs(runConfig.getArgs());
25+
26+
// Create your module path from the config
27+
FileCollection modulePath = getProject().getConfigurations().getByName("installer");
28+
29+
30+
setClasspath(modulePath); // EMPTY CLASSPATH, this is MODULE mode
31+
getMainClass().set("org.mangorage.installer.Installer");
32+
getMainModule().set("org.mangorage.installer");
33+
getModularity().getInferModulePath().set(true);
34+
35+
setJvmArgs(List.of("--add-modules", "java.scripting", "--add-modules", "java.instrument", "--add-modules", "java.sql", "--add-modules", "jdk.unsupported"));
36+
}
37+
}

0 commit comments

Comments
 (0)