Cloud Functions

Deploy a simple HTTP function.

Cloud Function is a scalable, pay as you go, Functions-as-a-Service (FaaS).

Spring Cloud Functions has pre-GA support for Cloud Functions for Java 11. See Spring Cloud Functions Reference Documentation for more details.

This guide currently uses a non-Spring example for Cloud Functions.

Getting Started


cd $HOME
git clone
cd java-docs-samples/functions/helloworld/helloworld


mvn package

Run Locally

mvn function:run
# In a different tab, trigger the function:
curl localhost:8080


Enable API

gcloud services enable


gcloud functions deploy helloworld --trigger-http \
--runtime=java11 \
--entry-point=functions.HelloWorld \


Once a HTTP function is deployed, you can connect to it using curl. You can also find the URL:

gcloud functions describe helloworld --format='value(httpsTrigger.url)'

Trigger the function with curl:

URL=$(gcloud functions describe helloworld --format='value(httpsTrigger.url)')
curl ${URL}

Alternatively, you can also use gcloud:

gcloud functions call helloworld

Additional Configurations

By default, Cloud Functions will deploy to the smallest 256MB instance. You can specify a larger instance and configure environment variables with the gcloud CLI:

gcloud functions deploy helloworld --trigger-http \
--runtime=java11 \
--entry-point=functions.HelloWorld \

Learn More