Skip to content

Commit

Permalink
Fix exceptions thrown during JavaPlugin#onEnable crash analyzer
Browse files Browse the repository at this point in the history
  • Loading branch information
GliczDev committed Aug 14, 2024
1 parent e7f62b8 commit aee0856
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions api/src/main/java/me/glicz/skanalyzer/loader/AddonsLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.jar.JarFile;
Expand Down Expand Up @@ -50,7 +51,7 @@ public void loadAddons() {

FileUtils.listFiles(getAddonsDirectory(), new String[]{"jar"}, false).forEach(this::initSimpleAddon);

addons.values().forEach(addon -> {
List.copyOf(addons.values()).forEach(addon -> {
try {
loadAddon(addon);
} catch (NullPointerException e) {
Expand All @@ -59,11 +60,19 @@ public void loadAddons() {
}
});

addons.values().forEach(addon -> server.getPluginManager().enablePlugin(addon));
addons.values().forEach(addon -> {
try {
server.getPluginManager().enablePlugin(addon);
} catch (Exception e) {
skAnalyzer.getLogger().error("Something went wrong while trying to enable %s".formatted(addon.getName()), e);
server.getPluginManager().disablePlugin(addon);
}
});

skAnalyzer.getLogger().info(
"Successfully loaded addons: {}",
addons.values().stream()
.filter(JavaPlugin::isEnabled)
.map(plugin -> plugin.getDescription().getFullName())
.collect(Collectors.joining(", "))
);
Expand Down

0 comments on commit aee0856

Please sign in to comment.