

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

# 檢視和更新套件版本詳細資訊和相依性
<a name="describe-package-version"></a>

您可以在 CodeArtifact 中檢視套件版本的相關資訊，包括相依性。您也可以更新套件版本的狀態。如需套件版本狀態的詳細資訊，請參閱 [套件版本狀態](packages-overview.md#package-version-status)。

## 檢視套件版本詳細資訊
<a name="view-package-details"></a>

 使用 `describe-package-version`命令來檢視套件版本的詳細資訊。套件版本詳細資訊會在發佈至 CodeArtifact 時從套件中擷取。不同套件中的詳細資訊會有所不同，取決於其格式，以及作者新增至其中的資訊量。

 `describe-package-version` 命令輸出中的大多數資訊取決於套件格式。例如， 會從其`package.json`檔案`describe-package-version`擷取 npm 套件的資訊。此修訂由 CodeArtifact 建立。如需詳細資訊，請參閱[指定套件版本修訂](copy-package.md#specify-package-version-revision)。

 如果兩個具有相同名稱的套件版本各自位於不同的命名空間中，則可以位於相同的儲存庫中。使用選用`--namespace`參數來指定命名空間。如需詳細資訊，請參閱 [檢視 npm 套件版本詳細資訊](#describe-package-version-npm) 或 [檢視 Maven 套件版本詳細資訊](#describe-package-version-maven) 。

 下列範例會傳回儲存`my_repo`庫中名為 `1.9.0`之 Python `pyhamcrest` 套件版本的詳細資訊。

```
aws codeartifact describe-package-version --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} \
--format pypi --package {{pyhamcrest}} --package-version {{1.9.0}}
```

 輸出可能如下所示。

```
{
  "format": "{{pypi}}",
  "package": "{{PyHamcrest}}",
  "displayName": "{{PyHamcrest}}",
  "version": "{{1.9.0}}",
  "summary": "{{Hamcrest framework for matcher objects}}",
  "homePage": "{{https://github.com/hamcrest/PyHamcrest}}",
  "publishedTime": {{1566002944.273}},
  "licenses": [
    {
      "id": "{{license-id}}",
      "name": "{{license-name}}"
    }
  ],
  "revision": "{{REVISION-SAMPLE-55C752BEE9B772FC}}"
}
```

**注意**  
CodeArtifact 會從套件作者提供的中繼資料中擷取套件版本詳細資訊，例如套件首頁或套件授權資訊。如果此資訊中的任何一個超過 400 KB，即 DynamoDB 項目大小限制，CodeArtifact 將無法處理此類資料，而且您可能無法在主控台或 的回應中看到此資訊`describe-package-version`。例如，例如 [https://pypi.org/project/rapyd-sdk/](https://pypi.org/project/rapyd-sdk/) 的 python 套件具有非常大的授權欄位，因此 CodeArtifact 不會處理此資訊。

## 檢視 npm 套件版本詳細資訊
<a name="describe-package-version-npm"></a>

若要檢視 npm 套件版本的詳細資訊，請將 `--format`選項的值設定為 **npm**。或者，在 `--namespace`選項中包含套件版本命名空間 (npm *範圍*)。`--namespace` 選項的值不應包含前置 `@`。若要搜尋命名空間 `@types`，請將 值設定為 {{類型}}。

以下內容會傳回 `@types`範圍`webpack`中名為 `4.41.5`的 npm 套件版本詳細資訊。

```
aws codeartifact describe-package-version --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} \
--format npm --package {{webpack}} --namespace {{types}} --package-version {{4.41.5}}
```

 輸出可能如下所示。

```
{
  "format": "{{npm}}",
  "namespace": "{{types}}",
  "package": "{{webpack}}",
  "displayName": "{{webpack}}",
  "version": "{{4.41.5}}",
  "summary": "{{Packs CommonJs/AMD modules for the browser. Allows ... further output omitted for brevity}}",
  "homePage": "https://github.com/webpack/webpack",
  "sourceCodeRepository": "https://github.com/webpack/webpack.git",
  "publishedTime": 1577481261.09,
  "licenses": [
    {
      "id": "{{license-id}}",
      "name": "{{license-name}}"
    }
  ],
  "revision": "{{REVISION-SAMPLE-55C752BEE9B772FC}}",
  "status": "Published",
  "origin": {
            "domainEntryPoint": {
                "externalConnectionName": "public:npmjs"
            },
            "originType": "EXTERNAL"
  }
}
```

## 檢視 Maven 套件版本詳細資訊
<a name="describe-package-version-maven"></a>

若要檢視 Maven 套件版本的詳細資訊，請將 `--format`選項的值設定為 ，`maven`並在 `--namespace`選項中包含套件版本命名空間。

 下列範例會傳回命名`org.apache.commons`空間和`my_repo`儲存庫`commons-rng-client-api`中名為 `1.2`之 Maven 套件版本的詳細資訊。

```
aws codeartifact describe-package-version --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} \
--format maven --namespace {{org.apache.commons}} --package {{commons-rng-client-api}} --package-version {{1.2}}
```

 輸出可能如下所示。

```
{
  "format": "{{maven}}",
  "namespace": "{{org.apache.commons}}",
  "package": "{{commons-rng-client-api}}",
  "displayName": "{{Apache Commons RNG Client API}}",
  "version": "{{1.2}}",
  "summary": "{{API for client code that uses random numbers generators.}}",
  "publishedTime": {{1567920624.849}},
  "licenses": [],
  "revision": "{{REVISION-SAMPLE-55C752BEE9B772FC}}"
}
```

**注意**  
CodeArtifact 不會從父 POM 檔案擷取套件版本詳細資訊。指定套件版本的中繼資料只會包含該確切套件版本的 POM 中的資訊，而不會包含父 POM 或使用 POM `parent`標籤暫時參考的任何其他 POM。這表示 的輸出`describe-package-version`會省略依賴`parent`參考包含此中繼資料的 Maven 套件版本的中繼資料 （例如授權資訊）。

## 檢視套件版本相依性
<a name="view-package-dependencies"></a>

 使用 `list-package-version-dependencies`命令來取得套件版本的相依性清單。下列命令列出 `my_domain` 網域中儲存`my_repo`庫`4.41.5`中名為 `my-package`、版本 之 npm 套件的相依性。

```
aws codeartifact list-package-version-dependencies --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} \
--format {{npm}} --package {{my-package}} --package-version {{4.41.5}}
```

 輸出可能如下所示。

```
{
  "dependencies": [
    {
      "namespace": "{{webassemblyjs}}",
      "package": "{{ast}}",
      "dependencyType": "{{regular}}",
      "versionRequirement": "{{1.8.5}}"
    },
    {
      "namespace": "{{webassemblyjs}}",
      "package": "{{helper-module-context}}",
      "dependencyType": "{{regular}}",
      "versionRequirement": "{{1.8.5}}"
    },
    {
      "namespace": "{{webassemblyjs}}",
      "package": "{{wasm-edit}}",
      "dependencyType": "{{regular}}",
      "versionRequirement": "{{1.8.5}}"
    }
  ],
  "versionRevision": "{{REVISION-SAMPLE-55C752BEE9B772FC}}"
}
```

如需 dependencyType 欄位的支援值範圍，請參閱 *CodeArtifact API* 中的 [PackageDependency](https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html) 資料類型。

## 檢視套件版本 readme 檔案
<a name="view-package-readme"></a>

 有些套件格式，例如 npm，包含 `README` 檔案。使用 `get-package-version-readme` 取得套件版本的 `README` 檔案。下列命令會傳回 `my_domain` 網域中儲存`my_repo`庫`4.41.5`中名為 `my-package`、版本 的 npm 套件`README`檔案。

**注意**  
CodeArtifact 不支援顯示一般或 Maven 套件中的讀我檔案。

```
aws codeartifact get-package-version-readme --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} \
--format {{npm}} --package {{my-package}} --package-version {{4.41.5}}
```

 輸出可能如下所示。

```
{  
  "format": "{{npm}}",
  "package": "{{my-package}}",
  "version": "{{4.41.5}}"
  "readme": "{{<div align=\"center\">\n   <a href=\https://github.com/webpack/webpack\"> ... more content ... \n}}",
  "versionRevision": "{{REVISION-SAMPLE-55C752BEE9B772FC}}"
}
```