這是 AWS CDK v2 開發人員指南。較舊的 CDK v1 已於 2022 年 6 月 1 日進入維護,並於 2023 年 6 月 1 日結束支援。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS Cloud Development Kit (AWS CDK) 專案代表包含 CDK 程式碼的檔案和資料夾。內容會根據您的程式設計語言而有所不同。
您可以手動或使用 AWS CDK 命令列界面 (AWS CDK CLI) cdk init
命令來建立 AWS CDK 專案。在本主題中,我們將參考由 AWS CDK CLI 建立之檔案和資料夾的專案結構和命名慣例。您可以自訂和組織 CDK 專案,以符合您的需求。
注意
建立的 AWS CDK CLI專案結構可能會隨著時間的推移而因版本而異。
通用檔案和資料夾
- .git
-
如果您
git
已安裝 , AWS CDK CLI會自動初始化專案的Git儲存庫。.git
目錄包含儲存庫的相關資訊。 - .gitignore
-
Git 用來指定要忽略之檔案和資料夾的文字檔案。
- README.md
-
提供您管理 AWS CDK 專案的基本指引和重要資訊的文字檔案。視需要修改此檔案,以記錄有關 CDK 專案的重要資訊。
- cdk.json
-
的組態檔案 AWS CDK。此檔案提供 如何執行應用程式的指示 AWS CDK CLI。
語言特定的檔案和資料夾
下列檔案和資料夾對於每個支援的程式設計語言都是唯一的。
以下是使用 cdk init --language typescript
命令在 my-cdk-ts-project
目錄中建立的範例專案:
my-cdk-ts-project ├── .git ├── .gitignore ├── .npmignore ├── README.md ├── bin │ └── my-cdk-ts-project.ts ├── cdk.json ├── jest.config.js ├── lib │ └── my-cdk-ts-project-stack.ts ├── node_modules ├── package-lock.json ├── package.json ├── test │ └── my-cdk-ts-project.test.ts └── tsconfig.json
- .npmignore
-
檔案,指定將套件發佈至npm登錄檔時要忽略的檔案和資料夾。此檔案類似於
.gitignore
,但專屬於 npm套件。 - bin/my-cdk-ts-project.ts
-
應用程式檔案會定義您的 CDK 應用程式。CDK 專案可以包含一或多個應用程式檔案。應用程式檔案會存放在
bin
資料夾中。以下是定義 CDK 應用程式的基本應用程式檔案範例:
#!/usr/bin/env node import 'source-map-support/register'; import * as cdk from 'aws-cdk-lib'; import { MyCdkTsProjectStack } from '../lib/my-cdk-ts-project-stack'; const app = new cdk.App(); new MyCdkTsProjectStack(app, 'MyCdkTsProjectStack');
- jest.config.js
-
的組態檔案Jest。 Jest 是熱門JavaScript的測試架構。
- lib/my-cdk-ts-project-stack.ts
-
堆疊檔案會定義您的 CDK 堆疊。在堆疊中,您可以使用 建構定義 AWS 資源和屬性。
以下是定義 CDK 堆疊的基本堆疊檔案範例:
import * as cdk from 'aws-cdk-lib'; import { Construct } from 'constructs'; export class MyCdkTsProjectStack extends cdk.Stack { constructor(scope: Construct, id: string, props?: cdk.StackProps) { super(scope, id, props); // code that defines your resources and properties go here } }
- node_modules
-
Node.js 專案中的常見資料夾,其中包含專案的相依性。
- package-lock.json
-
與
package.json
檔案搭配使用的中繼資料檔案,用於管理相依性的版本。 - package.json
-
Node.js 專案中常用的中繼資料檔案。此檔案包含 CDK 專案的相關資訊,例如專案名稱、指令碼定義、相依性和其他匯入專案層級資訊。
- test/my-cdk-ts-project.test.ts
-
測試資料夾會建立,以組織您 CDK 專案的測試。也會建立範例測試檔案。
您可以在 中撰寫測試TypeScript,並使用 Jest 來編譯TypeScript程式碼,然後再執行測試。
- tsconfig.json
-
用於指定編譯器選項和專案設定的TypeScript專案的組態檔案。