composer require报错:Installation failed, reverting ./composer.json to its original content.

一、前言
     laravel-swoole基于Swoole的高性能HTTP服务器。加快Laravel 和 Lumen 应用。

二、解决过程
在安装laravel-swoole的第一步就开始报错;

      composer require swooletw/laravel-swoole

1、composer版本不够?这个可能性比较小,但是试一下没坏处

怀疑是自己本地composer版本的问题,决定更新一下:

    composer self-update 
将 Composer 自身升级到最新版本,只需要运行 self-update 命令。它将替换你的 composer.phar 文件到最新版本。更新之后尝试依然安装失败。

2、难道是下载的版本太高?自己的php版本不够?laravel版本不够?Swoole不够?NO NO NO

    既然最新版的安装失败

       composer require swooletw/laravel-swoole (安装最新版本)

    那就指定版本下载
      composer require swooletw/laravel-swoole  2.6.6(安装2.6.6版本)
     用低版本试试,一如既往的报错。

3、难道是没有稳定版本,必须要兼容开发版本?

这点可以排除掉的,laravel-swoole还是比较稳定的

4、难道是我用的composer源不对,文件被墙了?

      由于下载安装完成composer 后 默认是国外镜像,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。所以建议使用国内的composer源(阿里源)

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

换成国内的源后,安装还是不行。

三、解决方案
     在composer.json上面下功夫没用,那么会不会是composer.lock的原因呢?

1、关于composer.lock

      使用composer安装php组件时候你会发现创建了一个composer.lock文件,这是做什么的呢?

      composer.lock是记录当前所有安装的php组件的版本,如果多人协作开发需保持下载的php组件的版本一样减少不必要的麻           烦,那么需要把composer.lock加入版本控制当中,比如使用git或者svn那么你就需要把它加入把版本控制当中。反之则不             用。需要注意的是,当composer install进行组件依赖时不会进行更新composer.lock文件除非引入了新的组件composer.json         中,如果想更新请使用composer update会把组件更新到最新稳定版本同时会更新最composer.lock文件。

2、删除composer.lock试试(重点来了

    1、把需要引入的包写入composer.json中
    (写入的话,就不需要composer require了,直接composer update 即可。)
    2、删除composer.lock
    3、composer clearcache   清除缓存
    4、composer update  更新依赖(重新生成composer.lock)
 按照上面的方案执行一遍,发现已经成功安装了laravel-swoole,看来就是composer.lock文件没更新的问题了

 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值