diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-06-12 22:13:00 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-06-12 22:13:00 +0800 |
| commit | 2932350cc1315534c4ee9a8c9fe17a9b0815f2e9 (patch) | |
| tree | 8f2f8e331987159016e084bb630892fa25150d27 /fabric/src/main/java | |
| parent | 187aa4c0fc07dcf6a27f2edb83b3d8163bef7420 (diff) | |
| download | RoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.tar.gz RoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.tar.bz2 RoughlyEnoughItems-2932350cc1315534c4ee9a8c9fe17a9b0815f2e9.zip | |
Fix REI on servers
Diffstat (limited to 'fabric/src/main/java')
| -rw-r--r-- | fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java b/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java index 5897f3864..88b373072 100644 --- a/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java +++ b/fabric/src/main/java/me/shedaniel/rei/fabric/PluginDetectorImpl.java @@ -24,6 +24,7 @@ package me.shedaniel.rei.fabric; import com.google.common.collect.Iterables; +import me.shedaniel.rei.RoughlyEnoughItemsInitializer; import me.shedaniel.rei.RoughlyEnoughItemsState; import me.shedaniel.rei.api.client.plugins.REIClientPlugin; import me.shedaniel.rei.api.common.plugins.*; @@ -37,6 +38,7 @@ import java.util.function.Consumer; public class PluginDetectorImpl { private static <P extends REIPlugin<?>> void loadPlugin(Class<? extends P> pluginClass, Consumer<? super REIPluginProvider<P>> consumer) { + out: for (EntrypointContainer<REIPluginProvider> container : Iterables.concat( FabricLoader.getInstance().getEntrypointContainers("rei_containers", REIPluginProvider.class), FabricLoader.getInstance().getEntrypointContainers("rei_server", REIPluginProvider.class), @@ -66,6 +68,11 @@ public class PluginDetectorImpl { }); } } catch (Throwable t) { + Throwable throwable = t; + while (throwable != null) { + if (throwable.getMessage().contains("environment type SERVER") && !RoughlyEnoughItemsInitializer.isClient()) continue out; + throwable = throwable.getCause(); + } String error = "Could not create REI Plugin [" + getSimpleName(pluginClass) + "] due to errors, provided by '" + container.getProvider().getMetadata().getId() + "'!"; new RuntimeException(error, t).printStackTrace(); RoughlyEnoughItemsState.error(error); |
