Azure Pipelines 代理程式附帶多個版本的 Node.js 函式庫,以支援可能需要不同 Node.js 處理器的目標任務。
Warning
Node.js 6、10 和 16 已進入生命週期末期,將於 2026 年 11 月 24 日從代理人中移除。 Azure Pipelines 代理程式已內含 Node.js 24。 擴充功能與自訂任務作者應將其任務更新至 Node.js 24,以避免對使用這些任務的管線造成任何影響。
Node.js 版本支援
下表列出 Azure Pipelines 支援的 Node.js 版本,以及它們的終止支援日期與移除日期。
| Node.js 版本 | Azure Pipelines 支援終止 | Azure Pipelines 中的移除日期 |
|---|---|---|
| 24 | 2028年4月1日 | 2028年10月1日 |
| 20 | 2026 年 4 月 | 2027年4月 |
| 16 | 2021 年 9 月 | 2026年11月24日 |
| 10 | 2021年4月 | 2026年11月24日 |
| 6 | 2019年4月 | 2026年11月24日 |
- Azure Pipelines 支援終止 — 當支援終止日期抵達時,Azure Pipelines 代理程式中 Node.js 版本將不會更新。 支援終止日期依據官方 Node.js 支援時間表決定。
- Azure Pipelines 中的移除日期——當移除日期達到時,Node.js 版本將從新的代理版本中移除,且需要這些 Node.js 版本的任務可能會無法執行。 移除日期將始終至少在停止支援日期後六個月。
管線會發出警告,告知用戶即將到來的支援終止或下架日期。
從 Node.js 24 開始,Azure Pipelines 代理程式僅包含交替的長期支援(LTS)Node.js 版本。
1Node.js 24 的支援終止與移除日期與官方 2025 年 11 月的 Node.js 支援時間表 相符。 這些日期可能會根據 Node.js 團隊未來的公告而調整。
Node.js 6、10 和 16 的移除日期
Node.js 6、10 和 16 自各自停止支援日期起,便未在管線中提供支援。 依賴這些 Node.js 版本的任務管線目前執行時會發出警告。 為了給你足夠時間將自訂任務遷移到支援的 Node.js 版本,我們將移除日期延長至 2026 年 11 月 24 日。
關於如何更新及測試自訂任務至目前版本的 Node.js資訊,請參見 「我如何將任務升級到最新版本的 Node.js」。
在終止支援的 Node.js 執行器被移除之前測試工作
使用組織層級的 限制在管線工作中使用已停止支援的 Node.js 版本 設定,評估從代理程式移除 Node.js 6、10 和 16 會如何影響您的管線。 這個設定預設是關閉的。 啟用後,受影響的任務會改用較新的可用 Node.js 執行器執行,而不是使用其宣告為已終止支援的執行器。
此設定能幫助您在 2026 年 11 月 24 日 Node.js 6、10 和 16 從代理移除前,識別並更新受影響的管線。 它不會從代理程式中移除執行器。
此功能的前提條件
你需要 Agent 版本 4.278.0 或更新版本才能設定上述設定。
啟用該設定
前往 組織設定>管道>設定。
在 任務限制 下,啟用 限制在管線工作中使用已停止支援的 Node.js 版本。
執行您的管線,並檢查記錄中是否有關於相依於已終止支援之 Node.js 版本的工作的警告。
啟用設定時的行為
對於每個宣告使用 Node.js 6、10 或 16 執行處理常式的任務,代理程式:
- 防止任務使用其所宣告的已終止支援 Node.js 執行器。
- 選取較新且可用的執行器,優先選用 Node.js 24,其次是 Node.js 20。
- 記錄一個警告,識別受影響的任務,並說明它可能會失敗或出現意外行為。
- 用所選執行器執行任務,或若無相容的新執行器可用,則任務失敗。
此設定適用於 Microsoft 託管與自架代理,以及在代理主機或容器中執行的任務。
Important
用較新的 Node.js 版本執行任務,並不代表該任務與該版本相容。 測試受影響的管線,並更新自訂任務以使用目前的 Node.js 執行器。 關於遷移指引,請參閱「 我如何將我的任務升級到最新版本的 Node.js」。
如何在不支援的 Node.js 版本上執行任務
為了維持使用已不再支援或已移除的 Node.js 版本自訂任務的向下相容性,我們提供以下自助選項,讓您能安裝所需的 Node.js 運行器:
手動安裝所需的 Node.js 執行器。 如需詳細資訊,請參閱 Node.js 執行器支援。
在你的管道中需要過時的 Node.js 函式庫時,使用
NodeTaskRunnerInstaller@0任務。安裝包含所需 Node.js 函式庫的代理程式包。
Azure Pipelines 提供兩個版本的代理程式套件:
-
vsts-agent-\:支援 Node.js 6 和 Node.js 10 程式庫的套件。 -
pipelines-agent-\:不支援 Node.js 6 和 Node.js 10 程式庫的套件。 未來,此版本的套件會成為預設代理程式套件。
備註
pipelines-agent套裝不含 Node.js 16。 擴充功能與自訂任務作者應更新 並測試 Node.js 24 的任務。如果您的工作不需要 Node.js 6 或 Node.js 10 程式庫,而且您不想在代理程式電腦上安裝 Node.js 6 或 Node.js 10 程式庫,您可以從 本文件的替代代理程式下載下安裝代理程式。
-
FAQ
當我啟用該設定時,使用 Node.js 6、10或16的任務會發生什麼事?
代理程式會封鎖該任務所宣告、已終止支援的執行器,並嘗試使用 Node.js 24 執行該任務;如果 Node.js 24 無法使用或不可用,則改用 Node.js 20。 管線日誌會標示受影響的任務並顯示警告。 如果沒有較新的可用執行器,該任務就會失敗。
使用 Node.js 的腳本和應用程式並不會因為使用 Node.js而受到影響。 該設定適用於由Azure Pipelines任務宣告的 Node.js 執行處理器。
為什麼在我啟用設定後,我的管線開始失敗?
管線可能使用的任務與較新的 Node.js 運行器不相容。 檢視管線日誌中的任務警告與錯誤,以找出受影響的任務。
- 若為內建任務,請更新管線以使用該任務的最新主要版本。
- 若有 Marketplace 任務,請查詢是否有更新版本或聯絡擴充功能發佈者。
- 對於自訂任務,將執行處理器與相依關係更新為目前的 Node.js 版本。 欲了解更多資訊,請參閱 「我如何將任務升級至最新版本的 Node.js」。
- 對於自架代理,請確保代理版本更新至 v 4.278.0 或更新版本。
在移除生命週期末期跑者之前,你可以暫時關閉組織設定,同時更新任務。 關閉設定並非長期解決方案,因為 Node.js 6、10 和 16 預定於 2026 年 11 月 24 日移除。
這項設定會將 Node.js 6、10 或 16 從我的代理程式中移除嗎?
No. 這項設定會防止管線任務選取這些執行器,讓你可以測試即將移除它們所造成的影響。 它不會從代理程式中卸載檔案。
我可以繼續使用不受支援的 Node.js 執行器嗎?
繼續使用已終止支援的執行階段會有安全性和相容性風險,因此請改為更新該工作。 關於臨時自架代理選項,請參閱 如何在不支援的 Node.js 版本上執行任務。
這個設定會影響 Azure DevOps Server 嗎?
No. 組織設定在 Azure DevOps Server 中無法使用。
另請參閱
- 任務類型和使用方式
- Azure Pipelines 代理人
- 新增自訂管線任務擴充功能