Comment on page

Spring Cloud GCP

Spring Cloud GCP contains a set of easy to use starters/autoconfigurations that allow you to easily connect and adopt GCP services.
Spring Cloud GCP is part of the Spring Cloud release train.
Even though Spring Cloud GCP is part of the Spring Cloud release train, it doesn't mean that you need to use any Spring Cloud features (Eureka, Config Server, etc.). The release train helps manage dependency versions so that you don't need to specify versions. It avoids having incompatible dependency versions, and eliminates dependency conflicts.


A short demo video of Spring Cloud GCP

Configure Spring Boot Project

New Spring Boot Project

Create a new Spring Boot project use Spring Initializr, and add the GCP Support dependency.
Add the GCP Support dependency
Or, generate the project using curl:
curl \
-d dependencies=web,cloud-gcp,lombok \
-d bootVersion=2.3.1.RELEASE \
-d baseDir=demo
Unpack the downloaded zip file:
The generated project will include Spring Cloud release train BOM.

Existing Spring Boot Project

If you want to add Spring Cloud GCP to existing project, simply add Spring Cloud release train configuration. Different Spring Boot version is compatible with different Spring Cloud releases.
Spring Boot Version
Spring Cloud Version
See Spring Cloud documentation for the latest versions.
Add the compatible Spring Cloud BOM version to your project:
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.2.RELEASE"
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom ''
A BOM is a Bill of Material, when imported, you can specify dependencies managed by the BOM without explicitly specifying a version for that dependency. Using the Spring Cloud BOM will allow you to use all Google Cloud Client Libraries and Spring Cloud GCP libraries without explicitly specifying a version.


Spring Cloud GCP supports many GCP services using de-facto Spring abstraction layers.
GCP Service
Spring Abstraction
Cloud SQL
JDBC template
Spring Data JPA
Cloud Spanner
Spring Data Spanner
Spring Data JPA with Hibernate
Cloud Datastore
Spring Data Datastore
Cloud Firestore
Spring Reactive Data Firestore
Cloud Pub/Sub
Pub/Sub Template
Spring Integration
Spring Cloud Stream
Spring Dataflow
Cloud Secret Manager
Spring Cloud Config
Cloud Storage
Spring Resource
Cloud Memorystore
Spring Data Redis
Distributed Tracing
Cloud Trace
Spring Cloud Sleuth
Zipkin / Brave
Centralized Logging
Cloud Logging
SLF4J / Logback
Monitoring Metrics
Cloud Monitoring
Micrometer / Prometheus
Cloud Identity Aware Proxy
Spring Security