Spigot 伺服器架設:BuildTools 編譯、插件支援與玩家連線教學

Ted Liou 2025.07.26 Minecraft 最後更新 2026.03.17

快速摘要

Spigot 伺服器的標準流程,是先準備對的 Java 版本,再用 BuildTools 編出 spigot-<version>.jar,把它移到獨立伺服器資料夾、建立 start.bat、接受 eula.txt,最後才處理玩家連線。本文用目前官方仍建議的流程,把每一步整理成可直接照做的版本。

Spigot 和 Minecraft 原版伺服器最大的差別,就是插件。只要你要做權限、保護區、傳送、經濟系統,或任何 Bukkit 生態裡常見的伺服器功能,直接改走 Spigot 通常比較合理。

本文走的是 Spigot 官方現在仍在維護的 BuildTools 流程。先講結論:Java 版本要對、BuildTools 要放在乾淨資料夾裡、編好的 .jar 要移到正式伺服器目錄再執行。這三件事先做對,後面大多只是例行設定。若你其實只想架原版多人世界,不打算裝插件,直接改看 Minecraft Java 原版伺服器架設:server.jar 下載、啟動與玩家連線教學 會比較省事。

BuildTools 官方說明請參考:BuildTools | SpigotMC Wiki;下載檔案請參考:BuildTools.jar

先準備對的 Java 版本與 BuildTools

Spigot 不像 Vanilla server 那樣直接下載現成 server.jar 就結束,我們要先用 BuildTools 編出對應版本的伺服器核心。這一步最常出錯的地方,通常是前置環境沒對好。

依目前 Spigot 官方 Wiki,Java 版本大致可以這樣抓:

  • Minecraft 1.20.5 以上:Java 21。
  • Minecraft 1.17.21.20.4:Java 17。
  • Minecraft 1.17.1:Java 16。
  • 更舊版本:Java 8。

Git 的部分,官方現在補了一句說明:最新版 BuildTools 在 Windows 上可以自動下載並安裝 Git。不過我還是會建議先把 Git 裝好,因為實際排錯時比較好判讀,也能直接用 Git Bash 跑編譯流程。Git 官方下載頁請參考:Git

先建立一個乾淨的 BuildTools 資料夾

BuildTools.jar 下載下來之後,先放進一個新的空資料夾。這個資料夾最好不要在 OneDrive、Dropbox 這類同步目錄裡,路徑中也不要出現空白或驚嘆號。Spigot 官方對這點寫得很明確,因為這些路徑條件真的會讓 BuildTools 在中途出現奇怪錯誤。

例如在 Windows 上,你可以直接建立 C:\BuildTools 這種乾淨路徑。接著在資料夾空白處按右鍵,使用 Git Bash 開啟命令列。

另外補一句官方更新:BuildTools 從 2024 年 1 月 15 日開始提供 GUI。若你只是想少碰指令,也可以直接雙擊執行;本文仍以 CLI 為主,因為路徑、版本和輸出檔案名稱都比較好交代。

在乾淨資料夾中放入 BuildTools.jar,準備用 Git Bash 啟動編譯

用 BuildTools 編譯 Spigot 伺服器主程式

BuildTools 官方指出,不加 --rev 參數時,預設就會編譯最新穩定版。所以最穩的起手式其實很簡單:

1java -jar BuildTools.jar --rev latest

若你要指定某個 Minecraft 版本,再把 latest 換成實際版本號即可,例如:

1java -jar BuildTools.jar --rev 1.21.11

編譯過程中會看到大量訊息,這很正常。等到最後出現 Success! Everything completed successfully.,就表示 BuildTools 已經把對應版本的 Spigot .jar 編好了。

Git Bash 執行 BuildTools,開始編譯指定版本的 Spigot 伺服器核心

把編好的 .jar 移到正式伺服器資料夾

編譯完成後,請把輸出的 spigot-<version>.jar 移到另一個新的伺服器資料夾。Spigot 官方也提醒,正式拿來開服時,不要直接在 BuildTools 那個編譯目錄裡跑,避免後續更新或重編時把資料夾弄亂。

進到新的伺服器資料夾後,建立一個 start.bat,內容可以先寫成這樣:

1java -Xms1024M -Xmx4096M -jar spigot-1.21.11.jar nogui

這裡的 spigot-1.21.11.jar 只是示意,你要改成自己實際編譯出來的檔名。-Xms-Xmx 則是最小與最大記憶體配置,可以依主機條件調整。

Windows 記事本建立 start.bat,內容為 Java 啟動 Spigot 伺服器的指令

第一次啟動先處理 eula.txt

第一次雙擊 start.bat,視窗很可能會閃退一次。這通常是正常的,因為伺服器只是先產生初始檔案,其中最重要的就是 eula.txt

打開 eula.txt 之後,把 eula=false 改成 eula=true,表示你同意 Mojang 的 EULA。官方條款請參考:Minecraft EULA

1eula=true

第一次啟動 Spigot 伺服器後產生的 eula.txt,需把 eula=false 改成 eula=true

第二次啟動後,先做本機確認

eula.txt 存好之後,再次執行 start.bat。當命令列最後出現類似 Done (...)! For help, type "help" 的訊息,就代表伺服器已經成功跑起來了。

這時候我會建議先做本機或同區網測試,確認世界能正常進入、指令列沒有明顯報錯,再往下處理朋友怎麼連線和插件怎麼裝。前面這一層先穩住,後面才不會所有問題混在一起。

Spigot 伺服器成功啟動後,在命令列顯示 Done 訊息

讓玩家連線到你的伺服器

伺服器成功啟動之後,接下來才是網路設定。常見做法大致有下面幾種:

  • Port Forwarding:最直接,適合真的要對外開服。
  • Radmin VPN:適合朋友間小型連線,不用先碰路由器。
  • ZeroTier:和 VPN 路線接近,也很適合私人遊玩。
  • ngrok:比較像短期測試或臨時分享方案。

要選哪一種,取決於你能不能調整家裡的網路設備、你要給多少人連,以及這是長期伺服器還是臨時開房。

總結

Spigot 伺服器的核心流程其實很固定:準備對的 Java 版本,把 BuildTools 放進乾淨資料夾編譯,將產出的 .jar 移到正式伺服器目錄,再建立 start.bat、接受 eula.txt,最後才處理玩家連線。

這篇刻意把重點放在前面幾步,因為 Spigot 真正常出問題的地方,往往集中在編譯環境、路徑和第一輪啟動沒有先處理乾淨。這幾件事站穩之後,後面要裝插件才有意義。

常見問題

最大差別是 Spigot 支援 Bukkit 生態系的插件;Vanilla server 則是官方原版伺服器,適合想保留純原版規則的人。

依 Spigot 官方 Wiki,最新版 BuildTools 在 Windows 上可以自動下載 Git;不過實際操作時,先把 Git 裝好仍然比較穩,也比較容易排查編譯問題。

Spigot 官方明確提醒,BuildTools 最好放在乾淨的空資料夾,並避開 OneDrive、Dropbox 這類同步目錄;路徑裡有空白或驚嘆號,也可能讓流程中途出錯。

作者

Ted Liou

現職 Unity C# 工程師,主要分享 Unity、C# 與 Vibe Coding 相關技術教學。

上一篇 Minecraft Java 原版伺服器架設:server.jar 下載、啟動與玩家連線教學 下一篇 使用 WinGet 安裝 OpenJDK:Windows 下載、驗證與移除教學