diff --git a/pom.xml b/pom.xml index 6721c4b..adc2efa 100644 --- a/pom.xml +++ b/pom.xml @@ -119,7 +119,7 @@ cc.carm.lib githubreleases4j - 1.2.2 + 1.3.0 compile diff --git a/src/main/java/cc/carm/plugin/ultradepository/hooker/UpdateChecker.java b/src/main/java/cc/carm/plugin/ultradepository/hooker/UpdateChecker.java index 07c1c09..3137bee 100644 --- a/src/main/java/cc/carm/plugin/ultradepository/hooker/UpdateChecker.java +++ b/src/main/java/cc/carm/plugin/ultradepository/hooker/UpdateChecker.java @@ -1,42 +1,28 @@ package cc.carm.plugin.ultradepository.hooker; -import cc.carm.lib.githubreleases4j.GithubRelease; import cc.carm.lib.githubreleases4j.GithubReleases4J; import cc.carm.plugin.ultradepository.UltraDepository; -import java.util.List; - public class UpdateChecker { public static void checkUpdate(UltraDepository plugin) { plugin.getScheduler().runAsync(() -> { - try { + Integer behindVersions = GithubReleases4J.getVersionBehind( + "CarmJos", "UltraDepository", + plugin.getDescription().getVersion() + ); - List releases = GithubReleases4J.listReleases("CarmJos", "UltraDepository"); - if (releases.isEmpty()) throw new NullPointerException(); // 无法获取更新 - - String currentVersion = plugin.getDescription().getVersion(); - int i = 0; - - for (GithubRelease release : releases) { - if (release.getTagName().equalsIgnoreCase(currentVersion)) { - break; - } - i++; - } - - if (i > 0) { - GithubRelease latestRelease = releases.get(0); - plugin.log("检查更新完成,当前已落后 " + i + " 个版本,最新版本为 &6&l" + latestRelease.getTagName() + " &r。"); - plugin.log("最新版本下载地址&e " + latestRelease.getHTMLUrl()); + if (behindVersions == null) { + plugin.error("检查更新失败,请您定期查看插件是否更新,避免安全问题。"); + plugin.error("插件下载地址&e " + GithubReleases4J.getReleasesURL("CarmJos", "UltraDepository")); + } else { + if (behindVersions > 0) { + plugin.log("检查更新完成,当前已落后 " + behindVersions + " 个版本。"); + plugin.log("最新版本下载地址&e " + GithubReleases4J.getLatestReleaseURL("CarmJos", "UltraDepository")); } else { plugin.log("检查更新完成,当前已是最新版本。"); } - - } catch (Exception exception) { - plugin.error("检查更新失败,请您定期查看插件是否更新,避免安全问题。"); - plugin.error("插件下载地址&e https://github.com/CarmJos/UltraDepository/releases"); } });