0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Java】Google Gen AI SDK で環境変数が認識されない (GOOGLE_API_KEY vs GEMINI_API_KEY) 時の対処法

0
Last updated at Posted at 2026-01-30

Gemini APIのクイックスタートに倣って、Gemini API の Java SDK を使用して開発を始める際、設定した環境変数が認識されず、IllegalArgumentException が発生することがあります。その原因と解決方法をまとめました。

執筆時点(2026/01/30) で下記エラーが発生します。

発生した問題

Exception in thread "main" java.lang.IllegalArgumentException: 
API key must either be provided or set in the environment variable GOOGLE_API_KEY.

GOOGLE_API_KEYという名前の環境変数が見つからないよ〜。と言ってますね。

原因

エラーの原因は、GOOGLE_API_KEYという名前の環境変数が設定されていないからです。
GeminiAPIのクイックスタートのサンプルコードのコメントに「環境変数GEMINI_API_KEYにAPIキーを設定せよ」と書いてあるのですが、実際は環境変数GOOGLE_API_KEYを見に行っているようです。

解決方法

環境変数を両方(GOOGLE_API_KEY, GEMINI_API_KEY)とも設定

macの場合

  • まず、.zshrc または .bash_profile に正しく変数を記述します。
export GEMINI_API_KEY='貴方のAPIキー'
export GOOGLE_API_KEY='貴方のAPIキー'
  • 次に、環境変数が期待通り設定されたかをechoコマンド等で確認します。
echo $GOOGLE_API_KEY
echo $GEMINI_API_KEY

windowsの場合

  • システム環境変数の編集を開く
    スタートメニューで「環境変数」と入力し、「システム環境変数の編集」を選択します。
    「詳細設定」タブにある「環境変数」ボタンをクリックします。

  • 変数を追加する
    「ユーザー環境変数」または「システム環境変数」の「新規」をクリックし、以下の2つを追加します。

    • 変数名: GOOGLE_API_KEY / 変数値: 貴方のAPIキー
    • 変数名: GEMINI_API_KEY / 変数値: 貴方のAPIキー
  • すべて「OK」で閉じます。

  • コマンドプロンプトで確認(設定の反映確認)
    新しくコマンドプロンプトを立ち上げ、以下のコマンドで表示されるか確認します。

echo %GOOGLE_API_KEY%
echo %GEMINI_API_KEY%

IDEの再起動

ここが重要なステップです。

環境変数の設定の後、IntelliJやVisualStudioCodeなどのIDEを再起動します。
macOSの場合、exportした後は source ~/.zshrc をしても、既に開いているIDEのターミナルやランナーには反映されないようです。

動作確認

サンプルコード

SDK (com.google.genai:google-genai) を使用した最小構成のサンプルです。

pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>gemini-api-sample</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>com.google.genai</groupId>
            <artifactId>google-genai</artifactId>
            <version>1.0.0</version>
        </dependency>
    </dependencies>
</project>
GenerateTextFromTextInput.java
package org.example;

import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;

public class GenerateTextFromTextInput {
    public static void main(String[] args) {
        // The client gets the API key from the environment variable `GEMINI_API_KEY`.
        Client client = new Client();

        GenerateContentResponse response =
                client.models.generateContent(
                        "gemini-3-flash-preview",
                        "Explain how AI works in a few words in Japanese",
                        null);

        System.out.println(response.text());
    }
}

結果

**大量のデータから学び、パターンを見つけて判断する技術**」です。

もっと短く言うと:
1. **データ**を取り込む
2. **学習**してルールを見つける
3. **予測・判断**して答えを出す

という仕組みです。

プロセスは終了コード 0 で終了しました

エラーが解消し、無事にGeminiさんから回答が返って来ましたね!

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?