JVM システムプロパティを使用して AWS SDK for Java と をグローバルに設定する AWS SDK for Kotlin - AWS SDKsとツール

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

JVM システムプロパティを使用して AWS SDK for Java と をグローバルに設定する AWS SDK for Kotlin

JVM システムプロパティは、 や など、JVM で実行される SDKs の設定オプション AWS SDK for Java と認証情報を指定する別の方法を提供します AWS SDK for Kotlin。SDKs」を参照してください。 JVM システムプロパティリスト

オプションの優先順位
  • JVM システムプロパティを使用して設定を指定すると、環境変数で見つかった値や、共有 AWS configおよび credentials ファイル内のプロファイルからロードされた値が上書きされます。

  • 環境変数を使用して設定を指定すると、共有 AWS ファイルconfigおよび credentials ファイル内のプロファイルからロードされた値が上書きされます。

JVM システムプロパティを設定する方法

JVM システムプロパティは、いくつかの方法で設定できます。

コマンドライン上

-D スイッチを使用してコマンドを呼び出すときに、javaコマンドラインに JVM システムプロパティを設定します。次のコマンドは、コード内の値を明示的に上書きしない限り、すべてのサービスクライアントに対して を AWS リージョン グローバルに設定します。

java -Daws.region=us-east-1 -jar <your_application.jar> <other_arguments>

複数の JVM システムプロパティを設定する必要がある場合は、-Dスイッチを複数回指定します。

環境変数を使用する

コマンドラインにアクセスして JVM を呼び出してアプリケーションを実行できない場合は、 JAVA_TOOL_OPTIONS環境変数を使用してコマンドラインオプションを設定できます。このアプローチは、Java ランタイムで AWS Lambda 関数を実行したり、埋め込み JVM でコードを実行したりする状況で役立ちます。

次の例では、コード内の値を明示的に上書きしない限り、すべてのサービスクライアントの を AWS リージョン グローバルに設定します。

Linux, macOS, or Unix
$ export JAVA_TOOL_OPTIONS="-Daws.region=us-east-1"

環境変数を設定すると使用する値が変更され、その値はシェルセッションが終了するか、または変数に別の値が設定されるまで有効です。変数をシェルのスタートアップスクリプトで設定することで、変数をこれからのセッションで永続的にすることができます。

Windows Command Prompt
C:\> setx JAVA_TOOL_OPTIONS -Daws.region=us-east-1

set を使用して環境変数を設定すると、現在のコマンドプロンプトセッションの終了時まで、または変数を別の値に設定するまで、使用する値が変更されます。setx を使用して環境変数を設定すると、現在のコマンドプロンプトセッションおよびコマンド実行後に作成するすべてのコマンドプロンプトセッションで使用する値が変更されます。これは、コマンド実行時にすでに実行されている他のコマンドシェルには影響を及ぼしません

実行時

次の例に示すように、 System.setPropertyメソッドを使用して、実行時にコードで JVM システムプロパティを設定することもできます。

System.setProperty("aws.region", "us-east-1");
重要

SDK サービスクライアントを初期化する前に JVM システムプロパティを設定します。そうしないと、サービスクライアントが他の値を使用する可能性があります。