composer.json和composer.lock的区别

composer install 命令

从当前目录读取 composer.json 文件,处理依赖关系,创建composer.lock文件, 并把依赖安装到 vendor 目录下。

composer.lock vs composer.json

如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据composer.json 文件去获取依赖。

如果没有 composer.lock 文件,composer 将在处理完依赖关系后创建它。

依赖升级

为了获取依赖的最新版本,并且升级 composer.lock 文件,你应该使用 composer update 命令。

小结

composer.lock 相当于composer依赖关系的缓存文件,有它从它处获取依赖,没它composer.json并生成缓存。composer.lock文件中保存的是组件及其依赖的具体版本,在多人协同开发的情况下,这个文件能很好的解决组件不同而产生的问题。在使用 composer install 的时候是不会修改 composer.lock 这个文件,所以会把这个文件也放入版本管理中,其它人在使用时只需要 composer install 就可以了。而使用 composer update 后修改这个文件。

composer 常用命令

命令 说明 composer config -g --unset repos.packagist 取消镜像 composer config -g repo.packagist composer https://packagist.org 切换为国外镜像 composer config -l -g 查看全局配置 composer require tymon/jwt-auth 0.5.* 根据版本安装组件包 composer remove aws/aws-sdk-php 卸载组件包 composer show
composer show monolog/*
composer show monolog/monolog 列出所有已经安装的包
可以通过通配符进行筛选
显示具体某个包的

 

 

 

 

 

地址改为中国镜像地址 

composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/

镜像名地址赞助商更新频率备注
阿里云 Composer 镜像https://mirrors.aliyun.com/composer/阿里云96 秒推荐
腾讯云 Composer 镜像PHP Composer腾讯云24 小时-
PHP 国内 Composer 镜像https://packagist.phpcomposer.com仁润股份24 小时不稳定
华为云 Composer 镜像https://repo.huaweicloud.com/repository/php/华为云未知未知
php.cnpkg.org Composer 镜像https://php.cnpkg.org安畅网络60 秒-

最后介绍两个处理加载不了包的解决办法命令

1.composer dump-autoload。我们从场景说它的用途吧,这个命令用在自动加载,当你在项目里自己写了一个包,那你怎么让它自己加载呢,你就可以通过这个命令,Composer 就会把相对应的目录文件生成到composer目录中。

2.composer install –ignore-platform-reqs 。就相当于设置了忽略版本匹配。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值