AutoUpdatePlugins

AutoUpdatePlugins - 插件自动更新

AutoUpdatePlugins 适用于 Velocity/Spigot/Bungeecord,可自动化更新任何插件的过程
Bukkit / Spigot 作者 NewAmazingPVP 支持版本 1.8 - 1.21
服务器使用量
273
服务玩家数
187
下载量
4,035
插件详细介绍

AutoUpdatePlugins 可以通过一个简单的列表文件,从多个来源自动更新你的插件。支持 Spigot/Paper/Folia、Velocity 和 BungeeCord。

更多信息

  • 更多信息与指南: https://github.com/NewAmazingPVP/AutoUpdatePlugins
  • 最新构建(新功能 + 修复): https://github.com/NewAmazingPVP/AutoUpdatePlugins/actions

功能说明

  • 自动从多个来源更新插件,包括 GitHub、Hangar、Modrinth、SpigotMC、Jenkins、CurseForge、直接链接等。
  • 通过 list.yml 统一管理需要更新的插件与来源。
  • 支持多种平台:
  • Spigot/Paper/Folia
  • Velocity
  • BungeeCord

安装与使用

  • 将 jar 放入 plugins/ 并重启服务器。
  • 编辑 plugins/AutoUpdatePlugins/config.yml 和 list.yml,添加需要更新的插件与来源。
  • 运行 /update,或让计划任务自动处理更新。

命令

  • /update — 更新 list.yml 中的所有插件
  • 权限:autoupdateplugins.update
  • /aup <subcommand> — 管理设置/列表
  • 权限:autoupdateplugins.manage

权限

  • autoupdateplugins.update — 允许更新插件
  • autoupdateplugins.manage — 管理插件列表

配置说明

updates

  • interval: 120 — 插件更新执行间隔,单位分钟。默认 120(每 2 小时一次)。
  • bootTime: 50 — 服务器启动后首次运行的延迟,单位秒。默认 50。
  • schedule.cron: "" — 使用 cron 表达式精确控制更新时间;留空则禁用。
  • schedule.timezone: "UTC" — cron 计划使用的时区,例如 "America/New_York"。

GitHub 访问

  • key: — 可选的 GitHub personal access token(PAT)。
  • 当你使用大量 GitHub 链接时,强烈建议填写,以避免在列出 releases/artifacts 时触发 API rate-limit。
  • public_repo 权限对公开仓库已足够。
  • 生成 token: https://github.com/settings/tokens

HTTP

  • http.userAgent: "" — 若留空,将使用轮换的真实 User-Agent 池。
  • http.headers: — 添加到每个请求中的额外请求头;仅在你明确知道需要时再添加。
  • http.sslVerify: true — 是否验证 TLS 证书;设为 false 表示信任所有证书,仅在必要时使用。
  • http.userAgents: — 可选的 User-Agent 池,插件会轮换使用,以减少被严格 CDN 阻止自动化请求的概率。

Proxy

  • proxy.type: "NONE" — 代理类型,支持 HTTP、SOCKS,其他值表示禁用。
  • proxy.host: "proxy.example" — 代理主机。
  • proxy.port: 8080 — 代理端口。

行为开关

  • behavior.useUpdateFolder: true — 使用更新文件夹。
  • behavior.zipFileCheck: true — 打开已下载的 .jar/.zip 以检查完整性后再安装,推荐开启。
  • behavior.ignoreDuplicates: true — 如果新 jar 的 MD5 与现有插件相同,则跳过替换。
  • behavior.allowPreRelease: false — 默认是否允许 GitHub 预发布版本。
  • behavior.autoCompile.enable: false — 启用 GitHub 源码构建回退。
  • behavior.autoCompile.whenNoJarAsset: true — 当发布版本没有 .jar 资源(仅 zip)时从源码构建。
  • behavior.autoCompile.branchNewerMonths: 6 — 如果默认分支比最新(预)发布版本更新超过 N 个月,则从源码构建。
  • behavior.debug: false — 详细调试日志,可通过 /aup debug on|off 切换。

路径

  • paths.tempPath: ''
  • paths.updatePath: ''
  • paths.filePath: ''
  • 以上为可选自定义路径。

性能与稳定性

  • performance.maxParallel: 4 — 最大并行下载数;越高越快,但会占用更多 IO/CPU。
  • performance.connectTimeoutMs: 10000 — 每个请求的 HTTP 连接超时,单位毫秒。
  • performance.readTimeoutMs: 30000 — 每个请求的 HTTP 读取超时,单位毫秒。
  • performance.perDownloadTimeoutSec: 0 — 每次下载的硬超时,单位秒;0 表示禁用。
  • performance.maxRetries: 3 — 针对临时性 HTTP 错误(403/429/5xx)的重试次数。
  • performance.backoffBaseMs: 500 — 重试之间的指数退避基础延迟,单位毫秒。
  • performance.backoffMaxMs: 5000 — 重试之间的最大退避延迟,单位毫秒。
  • performance.maxPerHost: 3 — 限制每个主机的并发下载数,以避免 429 并提高稳定性。

list.yml 说明

  • 在此目录下编辑生成的 list.yml。
  • 格式:
  • {FileSaveName}: {link.to.plugin}
  • 示例模板: https://github.com/NewAmazingPVP/AutoUpdatePlugins/blob/main/list.yml

示例

  • ViaVersion: "https://www.spigotmc.org/resources/viaversion.19254/"
  • Geyser: "https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot"
  • EssentialsXChat: "https://github.com/EssentialsX/Essentials[3]"

支持的来源

  • GitHub(Releases & Actions)
  • Jenkins
  • SpigotMC(Spiget)
  • dev.bukkit
  • Modrinth
  • Hangar
  • BusyBiscuit
  • blob.build
  • Guizhanss v2
  • MineBBS
  • CurseForge
  • 以及带有直接 .jar 链接的通用页面

提示

  • 选择资源:在链接后追加 [N] 以选择第 N 个资源,或使用 ?get=<regex> 按文件名匹配。
  • 预发布版本:将 behavior.allowPreRelease 设为 true,或在 GitHub 链接后追加 ?prerelease=true。
  • 强制从 GitHub 源码构建:在 GitHub 仓库 URL 后追加 ?autobuild=true。

Example list.yml

  • AuthMeReloaded: https://ci.codemc.io/job/AuthMe/job/AuthMeReloaded/[4]
  • BlueSlimeCore: https://www.spigotmc.org/resources/blueslimecore.83189/
  • Chunky: https://www.spigotmc.org/resources/chunky.81534/
  • ChunkyBorder: https://www.spigotmc.org/resources/chunkyborder.84278/
  • DiscordSRV: https://get.discordsrv.com/
  • Dynmap: https://dev.bukkit.org/projects/dynmap
  • EasyPrefix: https://www.spigotmc.org/resources/easyprefix-gui-custom-prefixes-sql-support.44580/
  • EssentialsX: https://github.com/EssentialsX/Essentials
  • EssentialsXChat: https://github.com/EssentialsX/Essentials[3]
  • FAWE: https://ci.athion.net/job/FastAsyncWorldEdit/
  • Floodgate: https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/spigot
  • Geyser-spigot: https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot
  • InventoryRollbackPlus: https://www.spigotmc.org/resources/inventory-rollback-plus.85811/
  • lssmp: https://www.spigotmc.org/resources/lifesteal-smp-plugin.94387/
  • LuckPerms: https://www.spigotmc.org/resources/luckperms.28140/
  • PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
  • PlayerStats: https://www.spigotmc.org/resources/playerstats.102347/
  • ProtocolLib: https://ci.dmulloy2.net/job/ProtocolLib/
  • SkinsRestorer: https://ci.codemc.io/job/SkinsRestorer/job/SkinsRestorerX-DEV/
  • TAB: https://github.com/NEZNAMY/TAB
  • ViewDistanceTweaks: https://www.spigotmc.org/resources/view-distance-tweaks.75164/
  • Voicemod: https://modrinth.com/plugin/simple-voice-chat/
  • ViaVersion-Dev: https://ci.viaversion.com/job/ViaVersion-DEV/
  • ViaBackwards: https://hangar.papermc.io/ViaVersion/ViaBackwards
  • Worldedit: https://dev.bukkit.org/projects/worldedit
  • Worldguard: https://dev.bukkit.org/projects/worldguard

支持

  • GitHub Issues: https://github.com/NewAmazingPVP/AutoUpdatePlugins/issues
  • Discord: https://discord.gg/u3u45vaV6G

其他

  • Bstats Bukkit
  • Bungeecord
  • Velocity
测试支持版本
1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.20.6 1.21
版本分布
基本信息
插件名称 AutoUpdatePlugins
作者 NewAmazingPVP
平台 Bukkit / Spigot
支持版本 1.8 - 1.21
点赞数 未统计
Modrinth 下载 12,032
最近版本
12.2.0 244
11.5 8
10.5 6
12.1.3 5
12.1.2 5
9.5 2
12.3.0 2
12.1.1 1