疑難排解
編譯失敗
為什麼已就緒的專案手動編譯會失敗、如何看懂錯誤,以及「用 AI 修正」什麼時候免費。
更新於
#為什麼已就緒的專案編譯會失敗?
編譯會建置目前的檔案。專案已就緒之後還編譯失敗,常見原因有:
- 檔案在驗證後被改過:你編輯了某些東西,或是某個聊天中的修改還沒驗證完。
- 程式碼以外的原因: 某個相依套件的儲存庫無法連線,或建置逾時(插件 5 分鐘,模組 10 分鐘)。請試試重新檢查。
如果檔案和 Codexe 交付時完全一樣,建置卻還是失敗,那就是 Codexe 要修的問題,而且是免費的。
#該怎麼做
- 看看編譯結果中的錯誤清單:每個錯誤都會標出檔案和行號。
- 按下用 AI 修正:
- 檔案從 Codexe 交付後都沒改過:會執行一次免費的內部修復(你會看到正在修正問題…);
- 檔案改過了:錯誤會以一般訊息送到聊天中(會用到 token)。
- 如果你剛剛自己編輯檔案修好了,請按重新檢查。
#看懂常見錯誤
| 錯誤 | 意思 |
|---|---|
cannot find symbol | 某個類別、方法或變數在你建置所用的 API 版本中不存在,或少了 import。請說明你的伺服器版本。 |
package … does not exist | pom.xml/build.gradle 中少了某個相依套件。請說出你用的插件或函式庫名稱。 |
incompatible types | 某個方法在這個 API 版本中回傳的型別不同。 |
Could not resolve … | 某個相依套件的版本不存在,或它的儲存庫不是 Codexe 能連到的。 |
release version 21 not supported | 專案的目標 Java 版本比建置時用的還新。Java 版本由 Minecraft 版本決定;請清楚寫出來。 |
#能建置,但在遊戲裡沒有作用
編譯只證明程式碼能建置,不代表功能的行為正確。請在聊天中描述遊戲裡發生的情況。請參閱常見平台錯誤。