2024/07/03 更新 版本6.1.1

1. 修复了6.1.0插件无法下载依赖的问题
2. 修复了部分报错不可见的问题
pull/106/head
Ling Bao 2 years ago
parent fcc49ea204
commit 577a792c68
No known key found for this signature in database
GPG Key ID: C27654300A2E94D6

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<artifactId>UltiTools-API</artifactId>
<groupId>com.ultikits</groupId>
<version>6.1.0</version>
<version>6.1.1</version>
<modelVersion>4.0.0</modelVersion>
<name>UltiTools-API</name>
<description>This project is the base of the Ultitools plugin development.</description>

@ -8,14 +8,12 @@ import com.ultikits.ultitools.interfaces.Localized;
import com.ultikits.ultitools.interfaces.VersionWrapper;
import com.ultikits.ultitools.interfaces.impl.data.mysql.MysqlDataStore;
import com.ultikits.ultitools.interfaces.impl.data.sqlite.SQLiteDataStore;
import com.ultikits.ultitools.interfaces.impl.logger.BukkitLogFactory;
import com.ultikits.ultitools.listeners.PlayerJoinListener;
import com.ultikits.ultitools.manager.*;
import com.ultikits.ultitools.utils.HttpDownloadUtils;
import com.ultikits.ultitools.utils.Metrics;
import com.ultikits.ultitools.utils.PluginInitiationUtils;
import cn.hutool.log.LogFactory;
import lombok.Getter;
import lombok.Setter;
import net.milkbowl.vault.economy.Economy;
@ -73,6 +71,8 @@ public final class UltiTools extends JavaPlugin implements Localized {
@Getter
@Setter
private DataStore dataStore;
@Getter
private URLClassLoader ultiToolsClassLoader;
/**
* Returns the instance of the UltiTools.
@ -119,7 +119,6 @@ public final class UltiTools extends JavaPlugin implements Localized {
@Override
public void onLoad() {
LogFactory.setCurrentLogFactory(new BukkitLogFactory());
saveDefaultConfig();
ultiTools = this;
// Plugin classloader initialization
@ -139,10 +138,10 @@ public final class UltiTools extends JavaPlugin implements Localized {
@Override
public void onEnable() {
// Load all lib
URLClassLoader urlClassLoader = new URLClassLoader(getLibs(), getClassLoader());
ultiToolsClassLoader = new URLClassLoader(getLibs(), getClassLoader());
// External bukkit libraries initialization
try {
dependenceManagers = new DependenceManagers(this, urlClassLoader);
dependenceManagers = new DependenceManagers(this, ultiToolsClassLoader);
} catch (Exception | NoClassDefFoundError error) {
needLoadLib = true;
}
@ -193,7 +192,7 @@ public final class UltiTools extends JavaPlugin implements Localized {
file.mkdirs();
}
try {
pluginManager.init(urlClassLoader);
pluginManager.init(ultiToolsClassLoader);
} catch (IOException e) {
throw new RuntimeException(e);
}

@ -458,7 +458,7 @@ public abstract class AbstractCommendExecutor implements TabExecutor {
String[] value = params.get(cmdParam.value());
try {
paramList.add(parseType(value, paramType));
} catch (Exception e) {
} catch (Exception | Error e) {
commandSender.sendMessage(ChatColor.RED + e.getMessage());
//noinspection CallToPrintStackTrace
e.printStackTrace();

@ -68,9 +68,13 @@ public abstract class UltiToolsPlugin implements IPlugin, Localized, Configurabl
* <p>
* UltiToolsPlugin
*/
@SneakyThrows
protected UltiToolsPlugin() {
InputStream inputStream = getInputStream();
InputStream inputStream = null;
try {
inputStream = getInputStream();
}catch (IOException e){
getLogger().error(e);
}
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
YamlConfiguration pluginConfig = YamlConfiguration.loadConfiguration(reader);
version = pluginConfig.getString("version");
@ -79,8 +83,12 @@ public abstract class UltiToolsPlugin implements IPlugin, Localized, Configurabl
loadAfter = pluginConfig.getStringList("loadAfter");
minUltiToolsVersion = pluginConfig.getInt("api-version");
mainClass = pluginConfig.getString("main");
inputStream.close();
reader.close();
try{
inputStream.close();
reader.close();
} catch (IOException e) {
getLogger().error(e);
}
resourceFolderPath = UltiTools.getInstance().getDataFolder().getAbsolutePath() + File.separator + "pluginConfig" + File.separator + this.getPluginName();
File file = new File(resourceFolderPath + File.separator + "lang" + File.separator + this.getLanguageCode() + ".json");
@ -98,7 +106,11 @@ public abstract class UltiToolsPlugin implements IPlugin, Localized, Configurabl
language = new Language(file);
}
saveResources();
initConfig();
try{
initConfig();
} catch (IOException e) {
getLogger().error(e);
}
}
/**
@ -229,7 +241,7 @@ public abstract class UltiToolsPlugin implements IPlugin, Localized, Configurabl
if (annotation != null && annotation.config()) {
for (String packageName : DependencyUtils.getPluginPackages(this)) {
UltiTools.getInstance().getConfigManager().registerAll(
this, packageName, this.getClass().getClassLoader()
this, packageName, UltiTools.getInstance().getUltiToolsClassLoader()
);
}
return;

@ -110,7 +110,7 @@ public class CommandManager {
Set<Class<?>> classes = PackageScanUtils.scanAnnotatedClasses(
CmdExecutor.class,
packageName,
UltiTools.getInstance().getClass().getClassLoader()
UltiTools.getInstance().getUltiToolsClassLoader()
);
for (Class<?> clazz : classes) {
try {
@ -233,7 +233,7 @@ public class CommandManager {
c.setAccessible(true);
command = c.newInstance(name, plugin);
} catch (Exception e) {
} catch (Exception | Error e) {
e.printStackTrace();
}
@ -250,7 +250,7 @@ public class CommandManager {
commandMap = (CommandMap) f.get(Bukkit.getPluginManager());
}
} catch (Exception e) {
} catch (Exception | Error e) {
e.printStackTrace();
}

@ -1,8 +1,12 @@
package com.ultikits.ultitools.manager;
import cn.hutool.core.comparator.VersionComparator;
import cn.hutool.log.LogFactory;
import com.ultikits.ultitools.UltiTools;
import com.ultikits.ultitools.context.ContextConfig;
import com.ultikits.ultitools.interfaces.impl.logger.BukkitLogFactory;
import lombok.Getter;
import mc.obliviate.inventory.InventoryAPI;
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
@ -23,6 +27,7 @@ public class DependenceManagers {
public DependenceManagers(UltiTools plugin, ClassLoader classLoader) {
this.classLoader = classLoader;
LogFactory.setCurrentLogFactory(new BukkitLogFactory());
initAdventure(plugin);
initSpringContext();
initInventoryAPI(plugin);

@ -88,7 +88,7 @@ public class PluginManager {
UltiToolsPlugin plugin;
try {
plugin = initializePlugin(classLoader, pluginClass);
} catch (Exception e) {
} catch (Exception | Error e) {
Bukkit.getLogger().log(
Level.WARNING,
String.format("[UltiTools-API] Cannot initialize plugin for %s", pluginClass.getName())
@ -130,7 +130,7 @@ public class PluginManager {
plugin = initializePlugin(
classLoader, pluginClass, pluginName, version, authors, loadAfter, minUltiToolsVersion, mainClass
);
} catch (Exception e) {
} catch (Exception | Error e) {
Bukkit.getLogger().log(
Level.WARNING,
String.format("[UltiTools-API] Cannot initialize plugin for %s", pluginClass.getName())
@ -164,7 +164,7 @@ public class PluginManager {
pluginContext.refresh();
pluginContext.getAutowireCapableBeanFactory().autowireBean(plugin);
}
} catch (Exception e) {
} catch (Exception | Error e) {
Bukkit.getLogger().log(
Level.WARNING,
String.format("[UltiTools-API] Cannot initialize plugin for %s", plugin.getPluginName())
@ -301,7 +301,7 @@ public class PluginManager {
);
}
return registerSelf;
} catch (Exception e) {
} catch (Exception | Error e) {
Bukkit.getLogger().log(Level.WARNING, e, String::new);
Bukkit.getLogger().log(Level.WARNING, String.format("[UltiTools-API] %s load failed", plugin.getPluginName()));
return false;

@ -29,7 +29,7 @@ public class PackageScanUtils {
classes.add(c);
}
}
} catch (Exception e) {
} catch (Exception | Error e) {
Bukkit.getLogger().log(Level.SEVERE, "Failed to scan annotated classes", e);
}
return classes;

Loading…
Cancel
Save