

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 CodeBuild 中使用 Maven 套件
<a name="using-maven-packages-in-codebuild"></a>

## 使用 IAM 角色設定許可
<a name="maven-packages-in-codebuild-iam"></a>

在 CodeBuild 中使用 CodeArtifact 中的 Maven 套件時，需要這些步驟。 CodeBuild

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在導覽窗格中，選擇**角色**。在**角色**頁面上，編輯 CodeBuild 組建專案所使用的角色。此角色必須具有下列許可。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [ "codeartifact:GetAuthorizationToken",
                         "codeartifact:GetRepositoryEndpoint",
                         "codeartifact:ReadFromRepository"
                         ],
             "Resource": "*"
         },
         {       
             "Effect": "Allow",
             "Action": "sts:GetServiceBearerToken",
             "Resource": "*",
             "Condition": {
                 "StringEquals": {
                     "sts:AWSServiceName": "codeartifact.amazonaws.com"
                 }
             }
         }
     ]
   }
   ```

------
**重要**  
 如果您也想要使用 CodeBuild 發佈套件，請新增 **codeartifact:PublishPackageVersion**和 **codeartifact:PutPackageMetadata**許可。

   如需詳細資訊，請參閱《*IAM 使用者指南*》中的[修改角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)。

## 使用 gradle 或 mvn
<a name="maven-packages-in-codebuild-login"></a>

若要搭配 `gradle`或 使用 Maven 套件`mvn`，請將 CodeArtifact 驗證字符存放在 環境變數中，如[在 環境變數中傳遞驗證字符](tokens-authentication.md#env-var)中所述。下列是 範例。

**注意**  
只有在您使用較舊的 CodeBuild 映像`pip3 install awscli --upgrade --user`時，才需要 AWS CLI 透過 升級 。如果您使用的是最新的映像版本，則可以移除該行。

```
pre_build:
  commands:
    - pip3 install awscli --upgrade --user
    - export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain {{my_domain}} --domain-owner {{111122223333}} --query authorizationToken --output text`
```

 **若要使用 Gradle：**

如果您參考 Gradle `build.gradle`檔案中的 `CODEARTIFACT_AUTH_TOKEN` 變數，如[搭配使用 CodeArtifact 與 Gradle](maven-gradle.md) 所述，您可以從 `buildspec.yaml``build`區段調用 Gradle 組建。

```
build:
  commands:
    - gradle build
```

 **若要使用 mvn：**

您必須依照[搭配使用 CodeArtifact 與 mvn](maven-mvn.md) 中的指示來設定 Maven 組態檔案 (`settings.xml` 和 `pom.xml`)。