Composer: PHP代码管理工具

Composer: PHP代码管理工具

10月 30, 2019     liumwei

Composer是PHP代码管理工具,发起者为Nils Adermann及Jordi Boggiano。通过Composer可以从PHP代码仓库(https://www.phpcomposer.com,国内镜像站点为https://pkg.phpcomposer.com)进行PHP相关代码(包括依赖库)进行管理和安装。从Drupal8开始,基于Composer的依赖库安装变得必要和必须。可以说,它和Drush是Drupal8的黄金搭配工具。大名鼎鼎的Acquia Dev Desktop默认已配置了该工具。那么如何使用Composer来解决Drupal相关模块所依赖的三方库呢?

* 额外说明:PHP类的相关库一般来自Github。https://www.phpcomposer.comhttps://libraries.io这样的站点,其目标是将分散的代码库进行集中索引或提供下载仓库。

1. Composer的安装与配置

运行composer是需要相应的环境的,Windows和Mac下的Acquia Dev Desktop已经默认带有此环境。Linux系统,如Debian/Ubuntu下,安装很简单,仅需如下一条命令即可(具体可参考这个页面):

sudo apt-get install composer

为了更好使用composer,可以将它默认的仓库地址进行切换配置,操作如下进行:

composer config -g repo.packagist composer https://packagist.phpcomposer.com #全局性修改composer仓库地址
composer config repo.packagist composer https://packagist.phpcomposer.com #局部修改composer仓库地址
composer config -g --unset repos.packagist #恢复到默认的官方composer仓库地址

2.  Drupal中的Composer的使用

进入到Drupal核心根目录(假如Drupal核心代码文件夹位置为/var/www/drupal8),然后执行如下命令即可:

cd /var/www/drupal8
composer require drupal/csv_serialization #为模块csv_serialization安装第三方依赖库
composer require drupal/adress ##为模块adress安装第三方依赖库

3. 解决服务器无法使用Composer的情况:ludwig

如果您的站点无法在服务器上拥有完整权限,那么composer很可能无法使用。此时,可以基于Drupal下的ludwig模块来获得解决。当然,使用的前提是安装这个模块。具体情况,可参见该模块的页面:https://www.drupal.org/project/ludwig