Cloud Run 函式會在環境中執行,該環境包含作業系統版本、附加套件、語言支援,以及支援和叫用函式的 Java Functions Framework 程式庫。這個環境會以語言版本識別,稱為執行階段 ID。
函式準備
您可以直接從 Google Cloud 控制台準備函式,也可以在本機撰寫函式並上傳。如要準備本機電腦以進行 Java 開發作業,請參閱「設定 Java 開發環境」。
支援的 Java 執行階段和基本映像檔
| 執行階段 | 執行階段 ID | 堆疊 | 執行階段基礎映像檔 |
|---|---|---|---|
| Java 25 (預先發布版) |
java25 |
|
|
| Java 21 | java21 |
|
|
| Java 17 | java17 |
|
|
| Java 11 | java11 | google-18-full | google-18-full/java11 |
選取執行階段
您可以在部署期間,針對函式選取其中一個支援的 Java 執行階段。
您可以使用 Google Cloud 控制台或 gcloud CLI 選取執行階段版本。按一下分頁標籤,瞭解如何使用自選工具:
gcloud
部署函式時,請使用 --base-image 旗標為函式指定 Java 基礎映像檔。例如:
gcloud run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image java21
取代:
將 FUNCTION 改為您要部署的函式名稱。您可以完全省略這個參數,但這樣系統會提示您輸入名稱。
FUNCTION_ENTRYPOINT,並在原始碼中輸入函式的進入點。這是 Cloud Run 在函式執行時執行的程式碼。這個旗標的值必須是來源程式碼中存在的函式名稱或完整類別名稱。
如需使用 gcloud CLI 部署函式的詳細操作說明,請參閱「在 Cloud Run 中部署函式」。
控制台
在 Google Cloud 控制台中建立或更新 Cloud Run 函式時,您可以選取執行階段版本。如需部署函式的詳細操作說明,請參閱「在 Cloud Run 中部署函式」。
如要在建立函式時,透過 Google Cloud 控制台選取執行階段,請按照下列步驟操作:
前往 Google Cloud 控制台的 Cloud Run 頁面:
按一下「編寫函式」。
在「執行階段」清單中,選取 Java 執行階段版本。
按一下「建立」,然後等待 Cloud Run 使用預留位置修訂版本建立服務。
主控台會將您重新導向至「來源」分頁,您可以在這裡查看函式的原始碼。按一下「儲存並重新部署」。
如需函式部署後更新執行階段版本的詳細操作說明,請參閱「重新部署新的原始碼」。
原始碼結構
如要讓 Cloud Run functions 找到函式的定義,原始碼必須遵循特定結構。詳情請參閱「編寫 Cloud Run functions」。
指定依附元件
您可以使用 Maven 或 Gradle 為函式指定依附元件。詳情請參閱「在 Java 中指定依附元件」。
環境變數
Java 執行階段會自動為函式設定特定環境變數,供函式視需要使用。詳情請參閱「設定環境變數」。
執行作業 ID
如果 Java 函式使用 functions-framework 1.4.0 以上版本,您可以透過記錄類別 java.util.logging.Logger,在記錄輸出內容中加入專屬的執行 ID。使用 stdout 或 stderr (例如 System.println()) 不會新增執行 ID。
注意事項:
如果您使用 Cloud Functions 第 2 代 API 建立函式 (例如使用
gcloud functions、REST API 或 Terraform),系統會自動新增這個執行 ID。如果您是使用 Cloud Run Admin API 建立函式 (例如使用 Google Cloud 控制台、
gcloud run、REST API 或 Terraform),則必須將LOG_EXECUTION_ID環境變數設為true,才能使用這項功能。