---
url: 'https://dxpr.com/zh-hans/hc/documentation/learn-drupal/getting-started/extend-drupal-10-composer'
title: '使用 Composer 扩展 Drupal 10 | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-24T08:17:33+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: '如今，社区贡献的 Drupal 模块依赖第三方库是很常见的情况，其中一些模块只能用 Composer 安装。如果您已经用 Composer 获取了 Drupal 核心，或者某个模块要求使用 Composer，那么您应该用 Composer 下载所有的模块和主题。如果您将 Composer 更新与其他方式混用，可能会遇到相当棘手的更新问题。'
tags:
  - 'Aan de slag'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-24T08:17:33+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: '使用 Composer 扩展 Drupal 10'
      description: '如今，社区贡献的 Drupal 模块依赖第三方库是很常见的情况，其中一些模块只能用 Composer 安装。如果您已经用 Composer 获取了 Drupal 核心，或者某个模块要求使用 Composer，那么您应该用 Composer 下载所有的模块和主题。如果您将 Composer 更新与其他方式混用，可能会遇到相当棘手的更新问题。'
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-24T08:17:33+0000'
      dateModified: '2026-10-24T08:17:33+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/zh-hans/hc/documentation/learn-drupal/getting-started/extend-drupal-10-composer'
      articleSection: 'Aan de slag'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/zh-hans/hc/documentation/learn-drupal/getting-started/extend-drupal-10-composer'
      description: '如今，社区贡献的 Drupal 模块依赖第三方库是很常见的情况，其中一些模块只能用 Composer 安装。如果您已经用 Composer 获取了 Drupal 核心，或者某个模块要求使用 Composer，那么您应该用 Composer 下载所有的模块和主题。如果您将 Composer 更新与其他方式混用，可能会遇到相当棘手的更新问题。'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: 首页
            item: 'https://dxpr.com/zh-hans'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: zh-hans
---
[Help Center](/zh-hans/node/75)/[Documentation](/zh-hans/hc/documentation) /[Learn Drupal](/hc/documentation/learn-drupal) /[Aan de slag](/hc/documentation/learn-drupal/aan-de-slag) # 使用 Composer 扩展 Drupal 10.

 Learn DrupalAan de slag

   ## In this guide

如今，社区贡献的 Drupal 模块依赖第三方库是很常见的情况，其中一些模块只能用 Composer 安装。如果您已经用 Composer 获取了 Drupal 核心，或者某个模块要求使用 Composer，那么您应该用 Composer 下载所有的模块和主题。如果您将 Composer 更新与其他方式混用，可能会遇到相当棘手的更新问题。

## 使用 Composer 获取社区贡献的模块和主题

想用 Composer 下载社区贡献的 Drupal 模块或主题吗？方法如下：

- 输入 `composer require drupal/module_name`
- 例如：`composer require drupal/token`
- 请确保您位于 Drupal 安装的根目录

随后 Composer 会更新您的 composer.json，将该模块加入其他依赖的列表，如下所示：

```javascript
{
    "require": {
        "drupal/token": "^1.5"
    }
}
```

Composer 会下载该模块及其可能有的所有依赖。

接下来，要启用 Drupal 模块，您有两个选择：

- 使用标准的 Drupal 网页界面，点击工具栏中的“扩展”。
- 试用 Drush 或 Drupal Console 等命令行工具，参见[从命令行安装模块](/docs/8/extending-drupal-8/installing-modules-from-the-command-line).

在 require 模块时，既可以使用项目名称，也可以使用项目中的具体模块名称：

- Composer 会下载包含该模块的整个项目。
- 例如，如果您需要 [features\_extra](https://drupal.org/project/features_extra) 项目中的 fe\_block 模块，可以任选以下两种方式：
    - `composer require drupal/features_extra`
    - `composer require drupal/fe_block`

## 选择版本

如果您希望指定要下载的模块或主题的版本，请这样做：

```php
composer require 'drupal/module_name:version'
```

（只需将`version`替换为实际的 Composer 版本或版本约束。）

例如：

```php
composer require 'drupal/dxpr_builder:^1.1'
composer require 'drupal/dxpr_builder:~1.1'
composer require 'drupal/dxpr_builder:2.2.2-alpha2'
composer require 'drupal/dxpr_builder:2.2.x-dev'
```

为避免在不同的终端或 Shell 中出现问题，请像上面的示例一样，将版本用引号括起来。

---

**注意！**在 Windows 上，使用（单）引号可能会破坏版本声明，导致安装失败并提示'*Could not parse version constraint .....': Invalid version string "....'"*.

*不*加引号，例如：

```php
composer require drupal/dxpr_builder:^2.2
```

或者使用*double quotes*代替单引号，如下所示：

```php
composer require "drupal/dxpr_builder:^2.2"
```

这样应该可以正常工作。更多信息，参见[评论“Composer 问题：无法解析版本约束”](https://www.drupal.org/forum/support/post-installation/2022-04-08/composer-problems-could-not-parse-version-constraint).

---

在上面的示例中，版本对应关系如下：

- ^1.1：对应模块最新的稳定 10.x-1.x 版本。
- ~1.1：对应模块最新的稳定 10.x-3.x 版本。
- 2.2.2-alpha2：对应 2.2.2-alpha2 版本
- 2.2.x-dev：对应 2.2.x-dev

关于 ~（波浪线）和 ^（脱字符）的版本约束的更多内容，请查看[后续重要版本运算符](https://getcomposer.org/doc/articles/versions.md#next-significant-release-operators).

建议您指定要下载的社区贡献模块的版本。

##
使用 Composer 搜索

好消息！Drupal.org 的 Composer 端点支持[Composer 搜索](https://getcomposer.org/doc/03-cli.md#search)功能，即您可以直接从命令行搜索 Drupal 项目。要使用 Composer 搜索，请输入：

```php
composer search views
```

## 使用 Composer 浏览

Drupal.org 面向 Drupal 7 到 10 的 Composer 端点同样支持[Composer 浏览](https://getcomposer.org/doc/03-cli.md#browse-home)功能，您可以直接从命令行查找 Drupal 项目的更多信息。要使用 Composer 浏览，请输入：

```php
composer browse drupal/token
```