如何解决在laravel中使用jenssegers/mongodb的问题解决方案
在使用laravel中的时候,会遇到将扩展包直接加载到现有项目中,而且在项目提交中的时候忘记将composer.lock提交,其中个别原因肯定很多,多数是由于项目管理不善导致的,但是问题已经出来了,何必再去纠结,找到办法解决再谈后话。
下面是我的解决思路
1、将本地的composer.lock删除
2、composer -vvv install
注意,如果你的很慢的话,请适用下阿里云的的库吧
https://mirrors.aliyun.com/composer/
建议来个全局配置吧
1 | composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ |
你也许会想到我想换回原来的怎么办 或者不想用怎么办
1 | composer config -g --unset repos.packagist |
这个命令可以解决
之后会提示你需要一个mongodb的扩展,好烦哦
3、MongoDB 扩展安装
官方说明
https://php.net/manual/en/mongodb.installation.php
mac下操作
1 | brew install homebrew/php/php71-mongodb |
不要意思 此命令已经被废弃了
2018-03-31 起弃用 homebrew/php
以后安装php扩展请用如下命令
1 | pecl install mongodb |
如果你的电脑不是同构brew安装的php请自行下载对应的版本扩展进行安装吧
1 | Build process completed successfully |
这个是我的安装成功的结果截图
然后在执行以下
1 | composer -vvv install |
问题得到解决