

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# sam build
<a name="sam-cli-command-reference-sam-build"></a>

Diese Seite enthält Referenzinformationen für den AWS Serverless Application Model Befehl Command Line Interface (AWS SAMCLI)`sam build`.
+ Eine Einführung in das finden AWS SAMCLI Sie unter [Was ist das? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Eine Dokumentation zur Verwendung des AWS SAMCLI `sam build` Befehls finden Sie unter[Einführung in das Bauen mit AWS SAM](using-sam-cli-build.md).

Der `sam build` Befehl bereitet eine Anwendung für nachfolgende Schritte im Entwickler-Workflow vor, z. B. lokales Testen oder Bereitstellen auf der AWS Cloud.

## Usage
<a name="ref-sam-cli-build-usage"></a>

```
$ sam build <arguments> <options>
```

## Argumente
<a name="ref-sam-cli-build-args"></a>

**Resource ID (Ressourcen-ID)**  <a name="ref-sam-cli-build-args-resource-id"></a>
Optional. Weist an, eine einzelne Ressource AWS SAM zu erstellen, die in einer [AWS SAM Vorlage](what-is-sam-overview.md#what-is-sam-template) deklariert ist. Die Build-Artefakte für die angegebene Ressource sind die einzigen, die für nachfolgende Befehle im Workflow verfügbar sind, d. h. `sam package` und`sam deploy`.

## Optionen
<a name="ref-sam-cli-build-options"></a>

`--base-dir, -s DIRECTORY`  <a name="ref-sam-cli-build-options-base-dir"></a>
Löst relative Pfade zum Quellcode der Funktion oder Ebene in Bezug auf dieses Verzeichnis auf. Verwenden Sie diese Option, wenn Sie ändern möchten, wie relative Pfade zu Quellcode-Ordnern aufgelöst werden. Standardmäßig werden relative Pfade in Bezug auf den Speicherort der AWS SAM Vorlage aufgelöst.  
Zusätzlich zu den Ressourcen in der Root-Anwendung oder dem Root-Stack, den Sie erstellen, werden mit dieser Option auch verschachtelte Anwendungen oder Stacks angewendet.  
Diese Option gilt für die folgenden Ressourcentypen und Eigenschaften:  
+ Ressourcentyp: `AWS::Serverless::Function` Immobilie: `CodeUri`
+ Ressourcentyp: `AWS::Serverless::Function` Ressourcenattribut: `Metadata` Eintrag: `DockerContext`
+ Ressourcentyp: `AWS::Serverless::LayerVersion` Immobilie: `ContentUri`
+ Ressourcentyp: `AWS::Lambda::Function` Immobilie: `Code`
+ Ressourcentyp: `AWS::Lambda::LayerVersion` Immobilie: `Content`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-build-options-beta-features"></a>
Betafunktionen zulassen oder ablehnen.

`--build-dir, -b DIRECTORY`  <a name="ref-sam-cli-build-options-build-dir"></a>
Der Pfad zu einem Verzeichnis, in dem die erstellten Artefakte gespeichert sind. Dieses Verzeichnis und sein gesamter Inhalt werden mit dieser Option entfernt.

`--build-image TEXT`  <a name="ref-sam-cli-build-options-build-image"></a>
Die URI des Container-Images, das Sie für den Build abrufen möchten. Ruft das Container-Image standardmäßig aus Amazon ECR AWS SAM Public ab. Verwenden Sie diese Option, um das Bild von einem anderen Speicherort abzurufen.  
Sie können diese Option mehrfach angeben. Jede Instanz dieser Option kann entweder eine Zeichenfolge oder ein Schlüssel-Wert-Paar annehmen. Wenn Sie eine Zeichenfolge angeben, ist dies die URI des Container-Images, das für alle Ressourcen in Ihrer Anwendung verwendet werden soll. Beispiel, `sam build --use-container --build-image amazon/aws-sam-cli-build-image-python3.8`. Wenn Sie ein Schlüssel-Wert-Paar angeben, ist der Schlüssel der Ressourcenname und der Wert ist der URI des Container-Images, das für diese Ressource verwendet werden soll. Zum Beispiel `sam build --use-container --build-image Function1=amazon/aws-sam-cli-build-image-python3.8`. Mit Schlüssel-Wert-Paaren können Sie verschiedene Container-Images für verschiedene Ressourcen angeben.  
Diese Option gilt nur, wenn die `--use-container` Option angegeben ist, andernfalls tritt ein Fehler auf.

`--build-in-source | --no-build-in-source`  <a name="ref-sam-cli-build-options-build-in-source"></a>
Geben Sie `--build-in-source` an, dass Ihr Projekt direkt im Quellordner erstellt wird.  
Die `--build-in-source` Option unterstützt die folgenden Laufzeiten und Build-Methoden:  
+ **Laufzeiten** — Jede Node.js Laufzeit, die von der `sam init --runtime` Option unterstützt wird.
+ **Methoden erstellen** —`Makefile`,`esbuild`.
Die `--build-in-source` Option ist mit den folgenden Optionen nicht kompatibel:  
+ `--hook-name`
+ `--use-container `
*Standardwert*: `--no-build-in-source`

`--cached | --no-cached`  <a name="ref-sam-cli-build-options-cached"></a>
Aktiviert oder deaktiviert zwischengespeicherte Builds. Verwenden Sie diese Option, um Build-Artefakte wiederzuverwenden, die sich gegenüber früheren Builds nicht geändert haben. AWS SAM bewertet, ob Sie Dateien in Ihrem Projektverzeichnis geändert haben. Standardmäßig werden Builds nicht zwischengespeichert. Wenn die `--no-cached` Option aufgerufen wird, überschreibt sie die `cached = true` Einstellung in samconfig.toml.  
AWS SAM bewertet nicht, ob Sie Module von Drittanbietern geändert haben, von denen Ihr Projekt abhängt, wenn Sie keine bestimmte Version bereitgestellt haben. Wenn Ihre Python-Funktion beispielsweise eine `requirements.txt` Datei mit dem Eintrag `requests=1.x` enthält und die neueste Version des Anforderungsmoduls von `1.1` zu geändert wird`1.2`, ruft sie die neueste Version erst ab, wenn Sie einen AWS SAM nicht zwischengespeicherten Build ausführen.

`--cache-dir`  <a name="ref-sam-cli-build-options-cached-dir"></a>
Das Verzeichnis, in dem die Cache-Artefakte gespeichert werden, wenn `--cached` angegeben. Das Standard-Cache-Verzeichnis ist`.aws-sam/cache`.

`--config-env TEXT`  <a name="ref-sam-cli-build-options-config-env"></a>
Der Umgebungsname, der die Standardparameterwerte in der zu verwendenden Konfigurationsdatei angibt. Der Standardwert ist „default“. Weitere Informationen zu Konfigurationsdateien finden Sie unter [AWS SAMCLIKonfigurationsdatei](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-build-options-config-file"></a>
Der Pfad und der Dateiname der Konfigurationsdatei, die die zu verwendenden Standardparameterwerte enthält. Der Standardwert ist "`samconfig.toml`" im Stammverzeichnis des Projektverzeichnisses. Weitere Informationen zu Konfigurationsdateien finden Sie unter [AWS SAMCLIKonfigurationsdatei](serverless-sam-cli-config.md).

`--container-env-var, -e TEXT`  <a name="ref-sam-cli-build-options-container-env-var"></a>
Umgebungsvariablen, die an den Build-Container übergeben werden sollen. Sie können diese Option mehrfach angeben. Jede Instanz dieser Option benötigt ein Schlüssel-Wert-Paar, wobei der Schlüssel die Ressourcen- und Umgebungsvariable und der Wert der Wert der Umgebungsvariablen ist. Beispiel: `--container-env-var Function1.GITHUB_TOKEN=TOKEN1 --container-env-var Function2.GITHUB_TOKEN=TOKEN2`.  
Diese Option gilt nur, wenn die `--use-container` Option angegeben ist, andernfalls tritt ein Fehler auf.

`--container-env-var-file, -ef PATH`  <a name="ref-sam-cli-build-options-container-env-var-file"></a>
Der Pfad und der Dateiname einer JSON-Datei, die Werte für die Umgebungsvariablen des Containers enthält. Weitere Hinweise zu Container-Umgebungsvariablendateien finden Sie unter[Datei mit Container-Umgebungsvariablen](serverless-sam-cli-using-build.md#serverless-sam-cli-using-container-environment-file).  
Diese Option gilt nur, wenn die `--use-container` Option angegeben ist, andernfalls tritt ein Fehler auf.

`--debug`  <a name="ref-sam-cli-build-options-debug"></a>
Aktiviert die Debug-Protokollierung, um die von ihm AWS SAMCLI generierten Debug-Meldungen zu drucken und Zeitstempel anzuzeigen.

`--docker-network TEXT`  <a name="ref-sam-cli-build-options-docker-network"></a>
Gibt den Namen oder die ID eines vorhandenen Docker Netzwerks an, mit dem Docker Lambda-Container eine Verbindung herstellen sollen, zusammen mit dem Standard-Bridge-Netzwerk. Wenn nicht angegeben, stellen die Lambda-Container nur eine Verbindung zum Docker Standard-Bridge-Netzwerk her.

`--exclude, -x`  <a name="ref-sam-cli-build-options-exclude"></a>
Der Name der Ressource (n), die von der `sam build` ausgeschlossen werden sollen. Wenn Ihre Vorlage beispielsweise `Function1``Function2`, und enthält `Function3` und Sie ausführen`sam build --exclude Function2`, `Function3` wird nur `Function1` und erstellt.

`--help`  <a name="ref-sam-cli-build-options-help"></a>
Zeigt diese Meldung an und wird beendet.

`--hook-name TEXT`  <a name="ref-sam-cli-build-options-hook-name"></a>
Der Name des Hooks, der zur Erweiterung der AWS SAMCLI Funktionalität verwendet wird.  
Zulässige Werte:`terraform`.

`--manifest , -m PATH`  <a name="ref-sam-cli-build-options-manifest"></a>
Der Pfad zu einer benutzerdefinierten Abhängigkeitsmanifestdatei (z. B. package.json), die anstelle der Standarddatei verwendet werden soll.

`--mount-symlinks`  <a name="ref-sam-cli-build-options-mount-symlinks"></a>
Stellt sicher, dass die Symlinks, die in den zu erstellenden oder aufzurufenden Dateien vorhanden sind, AWS SAMCLI immer eingehängt werden. Dies gilt nur für symbolische Links im Verzeichnis der obersten Ebene (d. h. für symbolische Links, die sich direkt im Stammverzeichnis der Funktion befinden). Standardmäßig werden Symlinks nicht gemountet, außer denen, die für die Verwendung `node_modules` in `build-in-source` NodeJS benötigt werden.

`--no-use-container`  <a name="ref-sam-cli-build-options-no-use-container"></a>
Eine Option, mit der Sie das IDE-Toolkit verwenden können, um das Standardverhalten festzulegen. Sie können es auch verwenden`sam build --no-use-container`, um einen Build auf Ihrem lokalen Computer anstelle eines Docker-Containers auszuführen.

`--parallel`  <a name="ref-sam-cli-build-options-parallel"></a>
Ermöglicht parallel Builds. Verwenden Sie diese Option, um die Funktionen und Ebenen Ihrer AWS SAM Vorlage parallel zu erstellen. Standardmäßig werden die Funktionen und Ebenen nacheinander erstellt.

`--parameter-overrides`  <a name="ref-sam-cli-build-options-parameter-overrides"></a>
(Optional) Eine Zeichenfolge, die CloudFormation Parameterüberschreibungen enthält, die als Schlüssel-Wert-Paare codiert sind. Verwendet dasselbe Format wie (). AWS Command Line Interface AWS CLI Zum Beispiel: '`ParameterKey`=`KeyPairName`, `ParameterValue` `MyKey` `ParameterKey` =`InstanceType`, `ParameterValue` =`t1.micro`'. Diese Option ist nicht kompatibel mit`--hook-name`.

`--profile TEXT`  <a name="ref-sam-cli-build-options-profile"></a>
Das spezifische Profil aus Ihrer Anmeldeinformationsdatei, das die AWS Anmeldeinformationen abruft.

`--region TEXT`  <a name="ref-sam-cli-build-options-region"></a>
Das AWS-Region , in dem die Bereitstellung erfolgen soll. Beispiel: us-east-1.

`--save-params`  <a name="ref-sam-cli-build-options-save-params"></a>
Speichern Sie die Parameter, die Sie in der Befehlszeile angeben, in der AWS SAM Konfigurationsdatei.

`--skip-prepare-infra`  <a name="ref-sam-cli-build-options-skip-prepare-infra"></a>
Überspringt die Vorbereitungsphase, wenn keine Änderungen an der Infrastruktur vorgenommen wurden. Zusammen mit der `--hook-name` Option verwenden.

`--skip-pull-image`  <a name="ref-sam-cli-build-options-skip-pull-image"></a>
Gibt an, ob der Befehl das Abrufen des neuesten Docker-Images für die Lambda-Laufzeit überspringen soll.

`--template-file, --template, -t PATH`  <a name="ref-sam-cli-build-options-template-file"></a>
Der Pfad und der Dateiname der AWS SAM Vorlagendatei. `[default: template.[yaml|yml]]` Diese Option ist nicht kompatibel mit`--hook-name`.

`--terraform-project-root-path`  <a name="ref-sam-cli-build-options-terraform-project-root-path"></a>
Der relative oder absolute Pfad zum Verzeichnis der obersten Ebene, das Ihre Terraform Konfigurationsdateien oder den Funktionsquellcode enthält. Wenn sich diese Dateien außerhalb des Verzeichnisses befinden, das Ihr Terraform Root-Modul enthält, verwenden Sie diese Option, um den absoluten oder relativen Pfad anzugeben. Für diese Option muss dieser `--hook-name` Wert auf gesetzt sein`terraform`.

`--use-container`, `-u`  <a name="ref-sam-cli-build-options-use-container"></a>
Wenn Ihre Funktionen von Paketen abhängen, die nativ kompilierte Abhängigkeiten haben, verwenden Sie diese Option, um Ihre Funktion in einem Lambda-ähnlichen Docker-Container zu erstellen.

## Beispiel
<a name="sam-cli-command-reference-sam-build-examples"></a>

Ein ausführliches Beispiel und eine ausführliche Anleitung zur Verwendung des `sam build` Unterbefehls finden Sie unter. [Einführung in das Bauen mit AWS SAM](using-sam-cli-build.md)