E_* 錯誤碼。錯誤碼只會新增,絕不會被改名或移除。錯誤碼旁邊的訊息屬於自由文案,任何版本都可能更動。
這張表隨 extension-develop/contract/codes.json 一起發布,參見 結果信封。
用法
專案
Manifest
編譯
E_COMPILE 和 E_FIRST_COMPILE 是編譯失敗時的頂層錯誤碼。上表中有十五列會出現在該影格的 error.details 裡,每條診斷一個:E_MODULE_NOT_FOUND、E_CONTENT_SCRIPT_SYNTAX、E_CSS_PARSE、E_ENTRY_NOT_FOUND、E_ASSET_MISSING、E_SCRIPT_DEP_MISSING、E_RESERVED_FOLDER、E_CSS_PREPROCESSOR_MISSING、E_CSS_DEAD_REF、E_LOCALES_LAYOUT、E_WAR_INVALID、E_BACKGROUND_REQUIRED、E_REMOTE_RESOURCE_BLOCKED、E_PERF_BUDGET 和 E_ENV_NO_MATCH。同樣這些錯誤碼也會以 E_CODE: 前綴出現在成功建置的 warnings 字串開頭。見編譯診斷。
遠端專案與網路
瀏覽器執行檔與啟動
瀏覽器執行階段
除錯協定
開發伺服器
就緒契約
控制通道
日誌
建立
其他所有情況
折疊名稱與舊名稱
codes.json 在這張表之外還帶了兩份額外對應:
folded把較細的清單名稱對應到已發布的家族錯誤碼上。例如E_ARG_REQUIRED會折疊為E_ARGS,E_BROWSER_NOT_INSTALLED會折疊為E_BROWSER_NOT_FOUND。legacy把信封出現之前的三種命名慣例對應到這張表上:ready.json的 snake_case 錯誤碼(profile_locked對應E_PROFILE_LOCKED)、PascalCase 的錯誤名稱(TargetNotFound對應E_TARGET_NOT_FOUND),以及 kebab-case 的 doctor 檢查項 id(eval-token對應E_TOKEN_MISSING)。

