

 AWS Cloud9 は新規顧客には利用できなくなりました。 AWS Cloud9 の既存のお客様は、通常どおりサービスを引き続き使用できます。[詳細はこちら](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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

# AWS Cloud9 IDE でのビルダー、ランナー、デバッガーの操作
<a name="build-run-debug"></a>

*ビルダー*は、 AWS Cloud9 統合開発環境 (IDE) にプロジェクトのファイルを構築する方法を指示します。*ランナー*は、特定のタイプのファイルを実行する方法を AWS Cloud9 IDE に指示します。ランナーは、*デバッガー*を使用してファイルのソースコードの問題を見つけることができます。

 AWS Cloud9 IDE を使用して、次の方法でコードを構築、実行、デバッグできます。
+ ビルダーを使用してプロジェクトのファイルを構築します。詳細については、「[プロジェクトのファイルの構築](#build-run-debug-build)」を参照してください。
+ ランナーを使用してコードを実行 (および任意でデバッグ) します。詳細については、「[組み込みの構築、実行、およびデバッグのサポート](#build-run-debug-supported)」および「[コードを実行する](#build-run-debug-run)」を参照してください。
+ 組み込みランナーを変更して、元の定義とは異なる方法でコードを実行 (および任意でデバッグ) します。詳細については、[「組み込みのランナーの変更](build-run-debug-change-runner.md)」を参照してください。
+ ランナーを使用して、ファイル名、コマンドラインオプション、デバッグモード、現在の作業ディレクトリ、および環境変数をカスタムに組み合わせて、コードを実行 (および任意でデバッグ) します。詳細については、「[実行設定の作成](build-run-debug-create-run-config.md)」を参照してください。
+ 独自のビルダーまたはランナーを作成します。詳細については、「[ビルダーまたはランナーの作成](#build-run-debug-create-builder-runner)」を参照してください。

## 組み込みの構築、実行、およびデバッグのサポート
<a name="build-run-debug-supported"></a>

 AWS Cloud9 IDE には、複数の言語のコードの構築、実行、デバッグのサポートが組み込まれています。完全なリストについては、「[言語のサポート](language-support.md)」を参照してください。

ビルドの組み込みサポートは、メニューバーで［**Run (実行)**］、［**Build System (ビルドシステム)**］を選択するか、［**Run (実行)**］、［**Build (構築)**］メニューコマンドで使用できます。プログラミング言語またはツールのサポートを追加するには、「[ビルダーまたはランナーを作成する](#build-run-debug-create-builder-runner)」を参照してください。

実行の組み込みサポートは、［**Run (実行)**］ボタン、およびメニューバーの［**Run (実行)**］、［**Run With (次で実行)**］、および［**Run (実行)**］、［**Run Configurations (実行設定)**］メニューコマンドで使用できます。プログラミング言語またはツールのサポートを追加するには、「[ビルダーまたはランナーを作成する](#build-run-debug-create-builder-runner)」または「[実行設定を作成する](build-run-debug-create-run-config.md)」を参照してください。

デバッグの組み込みサポートは、［**Debugger (デバッガー)**］ウィンドウから使用できます。［**Debugger (デバッガー)**］ウィンドウを表示するには、［**Debugger (デバッガー)**］ボタンを選択します。［**Debugger (デバッガー)**］ボタンが非表示になっている場合は、メニューバーで［**Window (ウィンドウ)**］、［**Debugger (デバッガー)**］の順に選択します。

## プロジェクトのファイルを構築する
<a name="build-run-debug-build"></a>

1. 構築したいコードに対応するファイルを開きます。

1. メニューバーで、［**Run (実行)］、［Build System (ビルドシステム)**］を選択し、使用するビルダーの名前がまだ選択されていない場合は選択します。使用したいビルダーがリストに表示されない場合は、この手順を停止して、「[ビルダーまたはランナーを作成する](#build-run-debug-create-builder-runner)」の手順を完了してから、この手順に戻ります。

1. ［**Run (実行)］、［Build (構築)］**を選択します。

## コードを実行する
<a name="build-run-debug-run"></a>

1. 実行したいコードに対応するファイルをまだ開いて選択していない場合は、ファイルを選択して開きます。

1. メニューバーで、以下のいずれかを選択します。
   + 最も一致する組み込みランナーを使用してコードを実行するには、［**Run (実行)］、［Run (実行)**］の順に選択します。 AWS Cloud9 が見つからない場合、このコマンドは無効になります。
   +  AWS Cloud9 最後に使用した実行設定でコードを実行するには、**「実行」、「最後に実行**」を選択します。
   + 特定のランナーを使用してコードを実行するには、［**Run (実行)］、［Run With (次で実行)**］を選択し、ランナーの名前を選択します。使用したいランナーがリストに表示されない場合は、この手順を停止して、「[ビルダーまたはランナーを作成する](#build-run-debug-create-builder-runner)」の手順を完了してから、この手順に戻ります。
   + ファイル名、コマンドラインオプション、デバッグモード、現在の作業ディレクトリ、および環境変数のカスタムの組み合わせを使用して特定のランナーでコードを実行するには、［**Run (実行)］、［Run Configurations (実行設定)**］の順に選択します。表示された実行設定タブで、［**Runner: Auto (ランナー: 自動)**］を選択し、使用したいランナーを選択してから［**Run (実行)**］を選択します。使用したいランナーがリストに表示されない場合は、この手順を停止して、「[ビルダーまたはランナーを作成する](#build-run-debug-create-builder-runner)」の手順を完了してから、この手順に戻ります。

## コードをデバッグする
<a name="build-run-debug-debug"></a>

1. コードの実行設定タブで、［**Run in Debug Mode (デバッグモードで実行)**］を選択します。バグアイコンが、白背景に緑に変わります。詳細については、「[コードを実行する](#build-run-debug-run)」および「[実行設定を作成する](build-run-debug-create-run-config.md)」を参照してください。

1. 次のように、実行中に一時停止したいブレークポイントをコード内に設定します。

   1. ブレークポイントを設定したい各ファイルを開きます。

   1. ファイル内のブレークポイントを設定したい各ポイントで、行番号の左にあるガーターの空白部分を選択します。赤い円が表示されます。

      ブレークポイントを削除するには、ガーターの既存のブレークポイントを選択します。

      ブレークポイントを削除ではなく無効にするには、［**Debugger (デバッガー)**］ウィンドウの［**Breakpoints (ブレークポイント)**］で、無効にしたいブレークポイントに該当するボックスのチェックを外します。ブレークポイントを再度有効にするには、クリアしたボックスを選択します。

      一度にすべてのブレークポイントを無効にするには、［**Debugger (デバッガー)**］ウィンドウで、［**Deactivate All Breakpoints (すべてのブレークポイントを無効にする)**］を選択します。すべてのブレークポイントを再度有効にするには、［**Activate All Breakpoints (すべてのブレークポイントを有効にする)**］を選択します。

      ［**Debugger (デバッガー)**］ウィンドウが非表示になっている場合は、［**Debugger (デバッガー)**］ボタンを選択します。［**Debugger (デバッガー)**］ボタンが非表示になっている場合は、メニューバーで［**Window (ウィンドウ)**］、［**Debugger (デバッガー)**］の順に選択します。

1. 次のように、実行が一時停止するポイントで取得したい値のウォッチ式を設定します。

   1. ［**Debugger (デバッガー)**］ウィンドウの［**Watch Expressions (ウォッチ式)**］で、［**Type an expression here (ここに式を入力)**］を選択します。

   1. ウォッチしたい式を入力し、`Enter` を押します。

      既存のウォッチ式を変更するには、ウォッチ式を右クリックして、［**Edit Watch Expression (ウォッチ式の編集)**］を選択します。変更を入力し、`Enter` を押します。

      既存のウォッチ式を削除するには、ウォッチ式を右クリックして、［**Remove Watch Expression (ウォッチ式の削除)**］を選択します。

1. 「[コードを実行する](#build-run-debug-run)」で説明されているようにコードを実行します。

実行が一時停止するたびに、表示されたコードの任意の部分 (変数など) でポインタを一時停止することもできます。関連情報があればそれがツールチップで表示されます。

# 組み込みランナーを変更する
<a name="build-run-debug-change-runner"></a>

このステップでは、組み込みランナーを変更して、元の定義とは異なる方法でコードを実行 (および任意でデバッグ) する方法を示します。

1. メニューバーで、［**Run (実行)］、［Run With (次で実行)**］を選択し、変更したい組み込みランナーを選択します。

1. ランナーでコードの実行を停止するには、表示された実行設定タブで［**Stop (停止)**］を選択します。

1. ［**Runner: My Runner (ランナー: マイランナー)**］を選択します。ここでは、［**My Runner**］は変更したいランナーの名前です。次に［**Edit Runner (ランナーの編集)**］を選択します。

1. 表示される［**My Runner.run**］タブで、ランナーの現在の定義を変更します。「[ビルダーまたはランナーを定義する](build-run-debug-define-builder-runner.md)」を参照してください。

1. ［**File (ファイル)］、［Save As (名前を付けて保存)**］の順に選択します。ファイルを同じ名前 (**My Runner.run**) で `my-environment/.c9/runners` ディレクトリに保存します。ここで、 `my-environment`は AWS Cloud9 開発環境の名前です。

**注記**  
組み込みランナーを変更した場合、それらの変更はその変更を行った環境にのみ適用されます。変更を別の 環境に適用するには、他の他の環境を開いて、前述のステップに従って組み込みランナーを開き、編集し、同じ変更を保存します。

# 実行設定を作成する
<a name="build-run-debug-create-run-config"></a>

このステップでは、ランナーを使用して、ファイル名、コマンドラインオプション、デバッグモード、現在の作業ディレクトリ、および環境変数をカスタムに組み合わせて、コードを実行 (および任意でデバッグ) する方法を示します。

メニューバーで、［**Run (実行)］、［Run Configurations (実行設定)］、［New Run Configuration (新しい実行設定)**］の順に選択します。表示された実行設定タブで、次の操作を実行します。

1. ［**Run (実行)**］および［**Restart (再起動)**］の横にあるボックスに、この実行設定の［**Run (実行)］、［Run Configurations (実行設定)**］メニューに表示する名前を入力します。

1. ［**Command (コマンド)**］ボックスに、使用したいカスタムコマンドラインオプションを入力します。

1. この実行設定でランナーの事前定義されたデバッグ設定を使用するには、［**Run in Debug Mode (デバッグモードで実行)**］を選択します。バグアイコンが、白背景で緑に変わります。

1. この実行設定で特定の作業ディレクトリを使用するには、［**CWD**］を選択し、ディレクトリを選択して［**Select (選択)**］を選択します。

1. この実行設定で特定の環境変数を使用するには、［**ENV**］を選択し、各環境変数の名前と値を入力します。

この実行設定を使用するには、実行したいコードに対応するファイルを開きます。メニューバーで、［**Run (実行)］、［Run Configurations (実行設定)**］の順に選択してから、実行設定の名前を選択します。表示された実行設定タブで、［**Runner: Auto (ランナー: 自動)**］を選択し、使用したいランナーを選択してから［**Run (実行)**］を選択します。

**注記**  
作成された実行設定は、その実行設定がある環境のみに適用されます。実行設定を別の環境に追加するには、他の環境を開いて、その環境で前述のステップに従って同じ実行設定を作成します。

## ビルダーまたはランナーを作成する
<a name="build-run-debug-create-builder-runner"></a>

このステップでは、独自のビルダーまたはランナーを作成する方法を示します。

1. ビルダーを作成するには、メニューバーで、［**Run (実行)］、［Build System (ビルドシステム)］、［New Build System (新しいビルドシステム)**］の順に選択します。ランナーを作成するには、メニューバーで、［**Run (実行)］、［Run With (次で実行)］、［New Runner (新しいランナー)**］の順に選択します。

1. 表示されたビルダータブ (［**My Builder.build**］というラベル) またはランナータブ (［**My Runner.run**］というラベル) で、ビルダーまたはランナーを定義します。「[ビルダーまたはランナーを定義する](build-run-debug-define-builder-runner.md)」を参照してください。

1. ビルダーまたはランナーを定義した後、［**File (ファイル)］、［Save As (名前を付けて保存)**］の順に選択します。ビルダーの場合は、`.build` という拡張子でファイルを `my-environment/.c9/builders` ディレクトリに保存します。`my-environment` は 環境の名前です。ランナーの場合は、`.run` というファイル拡張子でファイルを `my-environment/.c9/runners` ディレクトリに保存します。`my-environment` は環境の名前です。指定されたファイル名が、［**Run (実行)］、［Build System (ビルドシステム)**］メニュー (ビルダーの場合) または［**Run (実行)］、［Run With (次で実行)**］メニュー (ランナーの場合) に表示される名前です。したがって、別のファイル名を指定しない限り、デフォルトでは表示名は［**My Builder**］(ビルダーの場合) または［**My Runner**］(ランナーの場合) になります。

このビルダーまたはランナーを使用するには、「[プロジェクトのファイルを構築する](#build-run-debug-build)」または「[コードを実行する](#build-run-debug-run)」を参照してください。

**注記**  
作成したビルダーまたはランナーは、そのビルダーまたはランナーを作成した環境のみに適用されます。ビルダーまたはランナーを別の環境に追加するには、他の環境を開いて、その環境で前述のステップに従って同じビルダーまたはランナーを作成します。

# ビルダーまたはランナーを定義する
<a name="build-run-debug-define-builder-runner"></a>

このトピックでは、ビルダーまたはランナーを定義する方法について説明します。ビルダーまたはランナーを定義する前に、[必ずビルダーまたはランナーを作成](build-run-debug.md#build-run-debug-create-builder-runner)してください。



表示されたビルダーまたはランナータブで、JSON を使用してランナーまたはビルダーを定義します。次のコードをテンプレートとして使用して開始します。

ビルダーの場合は、このコードで開始します。

```
{
  "cmd": [],
  "info": "",
  "env": {},
  "selector": ""
}
```

ランナーの場合は、このコードで開始します。

```
{
  "cmd": [],
  "script": "",
  "working_dir": "",
  "info": "",
  "env": {},
  "selector": "",
  "debugger": "",
  "debugport": ""
}
```

上記のコードでは:
+  `cmd`: が単一のコマンドとして AWS Cloud9 実行する文字列のカンマ区切りリストを表します。

  がこのコマンド AWS Cloud9 を実行すると、リスト内の各文字列は 1 つのスペースで区切られます。たとえば、 AWS Cloud9 は `"cmd": [ "ls", "$file", "$args"]`として実行され`ls $file $args`、 AWS Cloud9 は現在のファイルへの`$file`フルパスと、ファイル名の後に入力された引数`$args`に置き換えられます。詳細については、このセクションで後述するサポートされている変数のリストを参照してください。
+  `script`: ランナーがターミナルで実行する Bash スクリプトを表します (読みやすくするために行の配列として指定することもできます)。
+  `working_dir`: ランナーが実行されるディレクトリを表します。
+  `info`: 実行開始時にユーザーに表示したい任意の文字列を表します。この文字列には変数を含めることができます。たとえば`Running $project_path$file_name...`、 AWS Cloud9 は を現在のファイルのディレクトリパス`$project_path`に、 を現在のファイルの名前部分`$file_name`に置き換えます。このセクションで後述するサポートされている変数のリストを参照してください。
+  `env`: AWS Cloud9 が使用するコマンドライン引数の配列を表します。次に例を示します。

  ```
  "env": {
    "LANG": "en_US.UTF-8",
    "SHLVL": "1"
  }
  ```
+  `selector`: このランナーに適用されるファイル名を識別 AWS Cloud9 するために使用する正規表現を表します。たとえば、`source.py` で Python ファイルを指定できます。
+  `debugger`: このランナーと AWS Cloud9 互換性のある使用可能なデバッガーの名前を表します。たとえば、V8 デバッガーには `v8` を指定できます。
+  `debugport`: デバッグ中 AWS Cloud9 に使用するポート番号を表します。たとえば、使用するポート番号に `15454` を指定できます。

次の表に、使用できる変数を示します。


****  

|  **変数**  |  **説明**  | 
| --- | --- | 
|   `$file_path`   |  現在のファイルのディレクトリ。たとえば `/home/ec2-user/environment` や `/home/ubuntu/environment` です。  | 
|   `$file`   |  現在のファイルの完全パス。たとえば `/home/ec2-user/environment/hello.py` や `/home/ubuntu/environment/hello.py` です。  | 
|   `$args`   |  ファイル名の後に入力する任意の引数。たとえば `"5" "9"` です。  | 
|   `$file_name`   |  現在のファイルの名前の一部。たとえば `hello.py` です。  | 
|   `$file_extension`   |  現在のファイルの拡張子。たとえば `py` です。  | 
|   `$file_base_name`   |  ファイル拡張子を付けない現在のファイルの名前。たとえば `hello` です。  | 
|   `$packages`   |  パッケージフォルダの完全パス。  | 
|   `$project`   |  現在のプロジェクトフォルダの完全パス。  | 
|   `$project_path`   |  現在のプロジェクトのディレクトリ。たとえば `/home/ec2-user/environment/` や `/home/ubuntu/environment/` です。  | 
|   `$project_name`   |  ファイル拡張子を付けない現在のプロジェクトの名前。たとえば `my-demo-environment` です。  | 
|   `$project_extension`   |  現在のプロジェクトファイルの拡張子。  | 
|   `$project_base_name`   |  拡張子を付けない現在のプロジェクトの名前。  | 
|   `$hostname`   |  環境のホスト名。たとえば `192.0.2.0` です。  | 
|   `$hostname_path`   |  プロジェクトファイルへの相対パスを含む環境のホスト名。たとえば `https://192.0.2.0/hello.js` です。  | 
|   `$url`   |  環境にアクセスする完全な URL。たとえば `https://192.0.2.0.` です。  | 
|   `$port`   |  環境に割り当てられたポート。たとえば `8080` です。  | 
|   `$ip`   |  環境に対してプロセスを実行する IP アドレス。たとえば `0.0.0.0` です。  | 

例として、次の `G++.build` という名前のビルダーファイルは、`-o` オプションを指定した ** `g++` ** コマンドを実行して現在のファイル (例: `hello.cpp`) をオブジェクトモジュールにコンパイルする GCC のビルダーを定義します。次に、オブジェクトモジュールを現在のファイルと同じ名前 (例: `hello`) でプログラムにリンクします。ここでは、`g++ -o hello hello.cpp` が同等のbuコマンドです。

```
{
  "cmd": [ "g++", "-o", "$file_base_name", "$file_name" ],
  "info": "Compiling $file_name and linking to $file_base_name...",
  "selector": "source.cpp"
}
```

別の例として、次の `Python.run` という名前のランナーファイルは、Python を使用し、任意の引数を指定して現在のファイルを実行するランナーを定義します。たとえば、現在のファイルが `hello.py` という名前であり、引数に `5` および `9` を指定する場合、同等のコマンドは `python hello.py 5 9` です。

```
{
  "cmd": [ "python", "$file_name", "$args" ],
  "info": "Running $file_name...",
  "selector": "source.py"
}
```

最後に、次の `Print Run Variables.run` という名前のランナーファイルは、使用できる変数ごとの値を単純に出力してから停止するランナーを定義します。

```
{
  "info": "file_path = $file_path, file = $file, args = $args, file_name = $file_name, file_extension = $file_extension, file_base_name = $file_base_name, packages = $packages, project = $project, project_path = $project_path, project_name = $project_name, project_extension = $project_extension, project_base_name = $project_base_name, hostname = $hostname, hostname_path = $hostname_path, url = $url, port = $port, ip = $ip"
}
```