1
mirror of https://github.com/CarmJos/MineSQL.git synced 2024-09-19 20:25:45 +00:00

fix(load): 修复插件加载时出现的问题

This commit is contained in:
Carm Jos 2022-12-18 04:27:37 +08:00
parent 708d3f8f3f
commit fa30bdad81
7 changed files with 39 additions and 39 deletions

View File

@ -127,12 +127,6 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<build> <build>

View File

@ -14,14 +14,10 @@ import cc.carm.plugin.minesql.util.DBPropertiesUtil;
import co.aikar.commands.CommandManager; import co.aikar.commands.CommandManager;
import co.aikar.commands.InvalidCommandArgument; import co.aikar.commands.InvalidCommandArgument;
import co.aikar.commands.Locales; import co.aikar.commands.Locales;
import com.google.common.collect.ImmutableList;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.io.File; import java.io.File;
import java.util.HashMap; import java.util.*;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
import java.util.logging.Logger; import java.util.logging.Logger;
public class MineSQLCore implements IMineSQL { public class MineSQLCore implements IMineSQL {
@ -126,8 +122,8 @@ public class MineSQLCore implements IMineSQL {
} }
}); });
commandManager.getCommandCompletions().registerCompletion("sql-managers", c -> { commandManager.getCommandCompletions().registerCompletion("sql-managers", c -> {
if (c.getIssuer().isPlayer()) return ImmutableList.of(); if (c.getIssuer().isPlayer()) return Collections.emptyList();
else return ImmutableList.copyOf(getRegistry().list().keySet()); else return getRegistry().list().keySet();
}); });
commandManager.registerCommand(new MineSQLCommand(this)); commandManager.registerCommand(new MineSQLCommand(this));
} }

View File

@ -7,7 +7,6 @@ import cc.carm.plugin.minesql.api.SQLRegistry;
import cc.carm.plugin.minesql.api.source.SQLSourceConfig; import cc.carm.plugin.minesql.api.source.SQLSourceConfig;
import cn.beecp.BeeDataSource; import cn.beecp.BeeDataSource;
import cn.beecp.BeeDataSourceConfig; import cn.beecp.BeeDataSourceConfig;
import com.google.common.collect.ImmutableMap;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.Unmodifiable; import org.jetbrains.annotations.Unmodifiable;
@ -115,7 +114,7 @@ public class MineSQLRegistry implements SQLRegistry {
@Override @Override
@Unmodifiable @Unmodifiable
public @NotNull Map<String, SQLManagerImpl> list() { public @NotNull Map<String, SQLManagerImpl> list() {
return ImmutableMap.copyOf(this.managers); return Collections.unmodifiableMap(this.managers);
} }
@Override @Override

View File

@ -1,5 +1,7 @@
package cc.carm.plugin.minesql; package cc.carm.plugin.minesql;
import cc.carm.lib.easyplugin.utils.ColorParser;
import cc.carm.lib.easyplugin.utils.JarResourceUtils;
import cc.carm.plugin.minesql.conf.PluginConfiguration; import cc.carm.plugin.minesql.conf.PluginConfiguration;
import co.aikar.commands.BungeeCommandManager; import co.aikar.commands.BungeeCommandManager;
import co.aikar.commands.CommandManager; import co.aikar.commands.CommandManager;
@ -10,6 +12,8 @@ import org.bstats.charts.SimplePie;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.io.File; import java.io.File;
import java.util.Arrays;
import java.util.Optional;
import java.util.logging.Logger; import java.util.logging.Logger;
public class MineSQLBungee extends Plugin implements MineSQLPlatform { public class MineSQLBungee extends Plugin implements MineSQLPlatform {
@ -29,6 +33,7 @@ public class MineSQLBungee extends Plugin implements MineSQLPlatform {
@Override @Override
public void onEnable() { public void onEnable() {
outputInfo();
getLogger().info("初始化指令管理器..."); getLogger().info("初始化指令管理器...");
this.commandManager = new BungeeCommandManager(this); this.commandManager = new BungeeCommandManager(this);
@ -59,6 +64,7 @@ public class MineSQLBungee extends Plugin implements MineSQLPlatform {
@Override @Override
public void onDisable() { public void onDisable() {
outputInfo();
getLogger().info("终止全部数据库连接..."); getLogger().info("终止全部数据库连接...");
this.core.getRegistry().shutdownAll(); this.core.getRegistry().shutdownAll();
} }
@ -86,5 +92,11 @@ public class MineSQLBungee extends Plugin implements MineSQLPlatform {
return this.commandManager; return this.commandManager;
} }
@SuppressWarnings("deprecation")
public void outputInfo() {
Optional.ofNullable(JarResourceUtils.readResource(this.getResourceAsStream("PLUGIN_INFO")))
.map(v -> ColorParser.parse(Arrays.asList(v)))
.ifPresent(list -> list.forEach(s -> ProxyServer.getInstance().getConsole().sendMessage(s)));
}
} }

View File

@ -66,6 +66,14 @@
<dependencies> <dependencies>
<!--suppress VulnerableLibrariesLocal -->
<dependency>
<groupId>com.velocitypowered</groupId>
<artifactId>velocity-api</artifactId>
<version>3.1.1</version>
<scope>provided</scope>
</dependency>
<!--suppress VulnerableLibrariesLocal --> <!--suppress VulnerableLibrariesLocal -->
<dependency> <dependency>
<groupId>${project.parent.groupId}</groupId> <groupId>${project.parent.groupId}</groupId>
@ -74,26 +82,16 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<!--suppress VulnerableLibrariesLocal -->
<dependency>
<groupId>com.velocitypowered</groupId>
<artifactId>velocity-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency> <dependency>
<groupId>org.bstats</groupId> <groupId>org.bstats</groupId>
<artifactId>bstats-velocity</artifactId> <artifactId>bstats-velocity</artifactId>
<version>3.0.0</version> <version>3.0.0</version>
<optional>true</optional>
</dependency> </dependency>
<dependency> <dependency>
<groupId>co.aikar</groupId> <groupId>co.aikar</groupId>
<artifactId>acf-velocity</artifactId> <artifactId>acf-velocity</artifactId>
<version>0.5.1-SNAPSHOT</version> <version>0.5.1-SNAPSHOT</version>
<optional>true</optional>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -30,8 +30,6 @@ import java.util.logging.Logger;
) )
public class MineSQLVelocity implements MineSQLPlatform { public class MineSQLVelocity implements MineSQLPlatform {
private static MineSQLVelocity instance;
private final ProxyServer server; private final ProxyServer server;
private final Logger logger; private final Logger logger;
private final File dataFolder; private final File dataFolder;
@ -45,7 +43,6 @@ public class MineSQLVelocity implements MineSQLPlatform {
public MineSQLVelocity(ProxyServer server, Logger logger, public MineSQLVelocity(ProxyServer server, Logger logger,
@DataDirectory Path dataDirectory, @DataDirectory Path dataDirectory,
Metrics.Factory metricsFactory) { Metrics.Factory metricsFactory) {
instance = this;
this.server = server; this.server = server;
this.logger = logger; this.logger = logger;
this.dataFolder = dataDirectory.toFile(); this.dataFolder = dataDirectory.toFile();
@ -57,7 +54,7 @@ public class MineSQLVelocity implements MineSQLPlatform {
@Subscribe(order = PostOrder.FIRST) @Subscribe(order = PostOrder.FIRST)
public void onInitialize(ProxyInitializeEvent event) { public void onInitialize(ProxyInitializeEvent event) {
outputInfo();
getLogger().info("初始化指令管理器..."); getLogger().info("初始化指令管理器...");
this.commandManager = new VelocityCommandManager(server, this); this.commandManager = new VelocityCommandManager(server, this);
@ -87,18 +84,19 @@ public class MineSQLVelocity implements MineSQLPlatform {
@Subscribe(order = PostOrder.LAST) @Subscribe(order = PostOrder.LAST)
public void onShutdown(ProxyShutdownEvent event) { public void onShutdown(ProxyShutdownEvent event) {
outputInfo();
getLogger().info("终止全部数据库连接..."); getLogger().info("终止全部数据库连接...");
this.core.getRegistry().shutdownAll(); this.core.getRegistry().shutdownAll();
} }
public static MineSQLVelocity getInstance() {
return instance;
}
public ProxyServer getServer() { public ProxyServer getServer() {
return server; return server;
} }
public @NotNull Logger getLogger() {
return logger;
}
public String getVersion() { public String getVersion() {
return this.server.getPluginManager().getPlugin("minesql") return this.server.getPluginManager().getPlugin("minesql")
.map(PluginContainer::getDescription) .map(PluginContainer::getDescription)
@ -110,9 +108,6 @@ public class MineSQLVelocity implements MineSQLPlatform {
return this.dataFolder; return this.dataFolder;
} }
public @NotNull Logger getLogger() {
return logger;
}
@Override @Override
public @NotNull CommandManager<?, ?, ?, ?, ?, ?> getCommandManager() { public @NotNull CommandManager<?, ?, ?, ?, ?, ?> getCommandManager() {
@ -123,5 +118,7 @@ public class MineSQLVelocity implements MineSQLPlatform {
return this.core.getConfig(); return this.core.getConfig();
} }
public void outputInfo() {
//TODO
}
} }

View File

@ -136,8 +136,12 @@
<shadedPattern>cc.carm.plugin.minesql.lib.jna</shadedPattern> <!-- Replace this --> <shadedPattern>cc.carm.plugin.minesql.lib.jna</shadedPattern> <!-- Replace this -->
</relocation> </relocation>
<relocation> <relocation>
<pattern>com.google</pattern> <pattern>com.google.protobuf</pattern>
<shadedPattern>cc.carm.plugin.minesql.lib.google</shadedPattern> <!-- Replace this --> <shadedPattern>cc.carm.plugin.minesql.lib.google.protobuf</shadedPattern> <!-- Replace this -->
</relocation>
<relocation>
<pattern>com.google.errorprone</pattern>
<shadedPattern>cc.carm.plugin.minesql.lib.google.errorprone</shadedPattern> <!-- Replace this -->
</relocation> </relocation>
<relocation> <relocation>
<pattern>com.github</pattern> <pattern>com.github</pattern>