google / google/adk-java

Hardcoded `System.getenv()` calls prevent programmatic configuration of parameters

Open
#1,022 2 comments 1 reaction 1 assignee Claimed by @hemasekhar-p View on GitHub
needs review
Dominant language
Java
Stars
1.7k
Forks
420
Avg merge
4d 12h
Merged PRs (30d)
31

Description

The Google ADK currently relies strictly on `System.getenv()` to read critical configuration parameters, specifically `GOOGLE_GENAI_USE_VERTEXAI`, `GOOGLE_CLOUD_PROJECT`, and `GOOGLE_CLOUD_LOCATION`.

This creates a significant architectural friction point for modern Java applications, such as Spring Boot on Java 17+. In these environments, configurations are managed internally via files like `application.yaml` rather than static OS-level environment variables. Because Java's `System.getenv()` reads an immutable OS map, we are completely blocked from programmatically injecting or wiring these values from our application's configuration at runtime.

This forces developers to rely on external CI/CD deployment wrappers or unsafe JVM reflection hacks just to pass standard configuration values into the SDK.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.