Record class
public record PluginConfig(String catName) {}
Loading
/**
* Loads the current config or copies the default
*/
private void loadConfig() {
final Path configPath = Path.of("config.toml");
// Create the default config if no file exists
if (Files.notExists(configPath)) {
try (final InputStream configStream = getClass().getResource("/config.toml").openStream()) {
Files.copy(configStream, configPath);
}
catch (IOException e) {
e.printStackTrace();
}
}
// Read config
try {
pluginConfig = new Toml().read(Files.newInputStream(configPath)).to(PluginConfig.class);
}
catch (IOException e) {
e.printStackTrace();
}
}
Exception
java.lang.AssertionError: java.lang.IllegalAccessException: Can not set final java.lang.String field dev.twelveoclock.plugintemplate.config.PluginConfig.catName to java.lang.String
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:226) ~[patched_1.17.1.jar:git-Purpur-1393]
at com.google.gson.Gson.fromJson(Gson.java:887) ~[patched_1.17.1.jar:git-Purpur-1393]
at com.google.gson.Gson.fromJson(Gson.java:952) ~[patched_1.17.1.jar:git-Purpur-1393]
at com.google.gson.Gson.fromJson(Gson.java:925) ~[patched_1.17.1.jar:git-Purpur-1393]
at com.moandjiezana.toml.Toml.to(Toml.java:323) ~[JavaGradlePluginTemplate-1.0.0-all.jar:?]
at dev.twelveoclock.plugintemplate.TemplatePlugin.loadConfig(TemplatePlugin.java:66) ~[JavaGradlePluginTemplate-1.0.0-all.jar:?]
at dev.twelveoclock.plugintemplate.TemplatePlugin.onLoad(TemplatePlugin.java:31) ~[JavaGradlePluginTemplate-1.0.0-all.jar:?]
at org.bukkit.craftbukkit.v1_17_R1.CraftServer.loadPlugins(CraftServer.java:416) ~[patched_1.17.1.jar:git-Purpur-1393]
at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:287) ~[patched_1.17.1.jar:git-Purpur-1393]
at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1216) ~[patched_1.17.1.jar:git-Purpur-1393]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:321) ~[patched_1.17.1.jar:git-Purpur-1393]
at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.IllegalAccessException: Can not set final java.lang.String field dev.twelveoclock.plugintemplate.config.PluginConfig.catName to java.lang.String
at jdk.internal.reflect.UnsafeFieldAccessorImpl.throwFinalFieldIllegalAccessException(UnsafeFieldAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.UnsafeFieldAccessorImpl.throwFinalFieldIllegalAccessException(UnsafeFieldAccessorImpl.java:81) ~[?:?]
at jdk.internal.reflect.UnsafeQualifiedObjectFieldAccessorImpl.set(UnsafeQualifiedObjectFieldAccessorImpl.java:79) ~[?:?]
at java.lang.reflect.Field.set(Field.java:824) ~[?:?]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131) ~[patched_1.17.1.jar:git-Purpur-1393]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220) ~[patched_1.17.1.jar:git-Purpur-1393]
... 11 more
Record class
Loading
Exception