A função do Cloud Run é executada em um ambiente que consiste em uma versão do sistema operacional com pacotes complementares, suporte a linguagens e a biblioteca do Java Functions Framework que dá suporte e invoca a função. Esse ambiente é identificado pela versão da linguagem e é conhecido como ID do ambiente de execução.
Preparação de funções
É possível preparar uma função diretamente do console Google Cloud ou gravá-la na máquina local e fazer upload dela. Para preparar a máquina local para desenvolvimento do Java, consulte Configurar um ambiente de desenvolvimento do Java.
Ambientes de execução do Java e imagens de base compatíveis
| Ambiente de execução | ID do ambiente de execução | Pilhas | Imagem de base do ambiente de execução |
|---|---|---|---|
| Java 25 (pré-lançamento) |
java25 |
|
|
| Java 21 | java21 |
|
|
| Java 17 | java17 |
|
|
| Java 11 | java11 | google-18-full | google-18-full/java11 |
Selecionar o ambiente de execução
É possível selecionar um dos ambientes de execução Java compatíveis para a função durante a implantação.
É possível selecionar uma versão de tempo de execução usando o console do Google Cloud ou a CLI gcloud. Clique na guia para ver instruções sobre como usar a ferramenta de sua preferência:
gcloud
Especifique a imagem de base do Java para sua função usando a flag --base-image ao implantar a função. Exemplo:
gcloud run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image java21
Substitua:
FUNCTION pelo nome da função que você está implantando. É possível omitir esse parâmetro inteiramente, mas será solicitado o nome, se você omiti-lo.
FUNCTION_ENTRYPOINT: o ponto de entrada da função no código-fonte. Esse é o código que o Cloud Run executa quando é executada. O valor dessa sinalização precisa ser um nome de função ou de classe totalmente qualificada no código-fonte.
Para instruções detalhadas sobre como implantar uma função usando a CLI gcloud, consulte Implantar funções no Cloud Run.
Console
É possível selecionar uma versão do ambiente de execução ao criar ou atualizar uma função do Cloud Run no console Google Cloud . Para instruções detalhadas sobre como implantar uma função, consulte Implantar funções no Cloud Run.
Para selecionar um ambiente de execução no console Google Cloud ao criar uma função, siga estas etapas:
No console Google Cloud , acesse a página do Cloud Run:
Clique em Escrever uma função.
Na lista Ambiente de execução, selecione uma versão do ambiente de execução Java.
Clique em Criar e aguarde o Cloud Run criar o serviço usando uma revisão do marcador de posição.
O console vai redirecionar você para a guia Origem, em que você pode ver o código-fonte da sua função. Clique em Salvar e implantar novamente.
Para instruções detalhadas sobre como atualizar a versão do ambiente de execução depois que a função for implantada, consulte Reimplantar um novo código-fonte.
Estrutura do código-fonte
Para que as funções do Cloud Run encontrem a definição da sua função, seu código-fonte precisa seguir uma estrutura específica. Consulte Escrever funções do Cloud Run para mais informações.
Como especificar dependências
É possível especificar dependências para a função usando Maven ou Gradle. Para mais informações, consulte Especificar dependências em Java.
Variáveis de ambiente
O ambiente de execução do Java define automaticamente certas variáveis de ambiente para que sua função use conforme necessário. Para detalhes, consulte Configurar variáveis de ambiente.
ID de execução
Para funções Java que usam a versão 1.4.0 ou mais recente do functions-framework, use a classe de geração de registros java.util.logging.Logger para adicionar um ID de execução exclusivo
às saídas de registro. Usar stdout ou stderr (por exemplo, System.println()) não adiciona o ID de execução.
Algumas considerações:
Se você criou a função usando a API Cloud Functions v2 (por exemplo, usando
gcloud functions, a API REST ou o Terraform), esse ID de execução será adicionado automaticamente.Se você criou a função usando a API Cloud Run Admin (por exemplo, usando o console Google Cloud ,
gcloud run, a API REST ou o Terraform), defina a variável de ambienteLOG_EXECUTION_IDcomotruepara usar esse recurso.