【CoreProtect】自行升級至 Minecraft 1.21.x、1.22.x 或更高版本

URL Link //n.sfs.tw/16522

2025-06-28 20:37:08 By 過路君子

大家好,這裡是逼不得已得自己來的小編過路君子

不知道為什麼,CoreProtect 官方竟然停止更新了,但該插件著實好用,一時半會找不到替代品可用

 

 

如果有在經營 Minecraft 多人伺服器的話,想必一定對這個插件不陌生吧!

但是不知道為何,Minecraft 1.21.7 的消息都已經釋出了,這個插件支援的版本不知為何依舊停留在 Minecraft 1.20.6。

要知道現在是 2025 年 6 月快要 7 月了 ,Minecraft 1.21 的發布時間可是 2024 年的 6 月 13 號。

(所有圖片點擊都可以放大、變高清)

 

那沒有辦法,小編只能打開他們的 Github 專案,嘗試來自己升級 CoreProtect 版本,用以符合現在新版的 Minecraft 1.21.6。

 

在這邊小編要先說,之所以我們能夠自行升級、編譯該專案,是因為該專案採用  Artistic License 2.0 授權。

所以小編可以在這邊分享如何自行升級,有些專案的授權是不允許重製的,那些小編就不會發布文章來教學如何自行升級囉。

 

那在正式開始之前,我們會需要準備一些編譯環境,分別是:git、java 還有 maven。

小編在這邊列出小編在編譯的時候所使用的軟體版本資訊以及相關軟體的載點~

請各位先行將這些軟體配置在自己的電腦上以及設定好相關的環境變數呦!

軟體 版本 載點
Git 2.50.0 載點
Java 21.0.7 載點
Maven 3.9.10 載點

配置好之後,簡單的輸入一些指令來測試是否能夠正常使用吧。

 

首先第一步,我們先將 CoreProtect 的專案 clone 下來。

git clone https://github.com/PlayPro/CoreProtect.git
cd CoreProtect

 

接下來打開 pom.xml 檔案,並且找到以下字串:

<dependency>
  <groupId>io.papermc.paper</groupId>
  <artifactId>paper-api</artifactId>
  <version>1.21.1-R0.1-SNAPSHOT</version>
  <scope>provided</scope>
</dependency>

接下來將版本號改成我們需要的 Minecraft 版本。

以小編這邊為例,因為要使其能在 Minecraft 1.21.6 上面執行,所以就改成 1.21.6-R0.1-SNAPSHOT。

那如果各位要使用的 Minecraft 版本並非 1.21.6 的話。

要輸入什麼版本號可以參考以下兩個頁面:

※ 要注意如果使用 Minecraft 1.16 以前的版本的話 groupId 要改成 com.destroystokyo.paper 喔。

 

然後打開 plugin.yml 檔案;檔案路徑:src\main\resources\plugin.yml

找到以下字串:

branch: ${project.branch}

並且改成:

branch: developement

改完後如下圖所示:

 

如果各位是要更新到 Minecraft 1.21 以上的話,就必須進行以下步驟,否則可以跳過。

最後打開 WorldEditBlockState.java 這個檔案;檔案路徑:src\main\java\net\coreprotect\worldedit\WorldEditBlockState.java

在最底下插入以下的程式碼:

@Override
public boolean isSuffocating()
{
	return false;
}

完成後如下圖所示:

 

接下來直接到命令提示字元底下直接執行編譯並打包的指令:

mvn clean package

接下來等待其編譯完畢,可能會下載很多的依賴包,一樣耐心的等待編譯結束。

 

接下來在我們的專案資料夾內,應該就會出現一個 target 的資料夾。

進去之後找到 CoreProtect-22.4.jar 這個檔案,把這個檔案放到 Minecraft server 的 plugins 資料夾內就可以囉!

 

 

 

後記

還好這次沒有遇到相容性的問題,可以很順利的在 Minecraft Server 內執行,小編簡單的測試了一下,基本上都正常,目前還沒有遇到錯誤或是指令失效的部分。

但小編還是希望官方能趕緊跟進更新,否則小編也怕未來像這樣自己強行更新上去之後,會遇到奇怪的錯誤。

畢竟是強行更新上去的,穩定性和相容性是沒有保證的,只能保證可以用而已。