我正在我的MacBook Pro上安装代客 - El Capitan。
我按照Valet文档页面的建议,使用Homebrew安装了PHP和MySQL。
但是,当我尝试安装代客时,我收到错误:
PHP致命错误:无法在/Users/marc/.composer/vendor/laravel/valet中重新声明resolve()(之前在/Users/marc/.composer/vendor/hoa/core/Protocol.php:1140中声明)第57行/cli/includes/helpers.php
致命错误:无法在/Users/marc/.composer/vendor/laravel/valet/中重新声明resolve()(之前在/Users/marc/.composer/vendor/hoa/core/Protocol.php:1140中声明)第57行的cli / includes / helpers.php
我的composer.json文件如下所示:
{
"require": {
"phpunit/phpunit": "~4.2",
"phpmetrics/phpmetrics": "^1.10",
"laravel/valet": "^1.1"
}
}
我尝试删除composer.lock并删除了供应商目录,然后删除了composer install
,但没有任何变化。有人在这有什么建议吗?
答案 0 :(得分:3)
我最近碰到了这个,我可以通过卸载/重新安装代客解决它:
composer global remove laravel/valet
然后
composer global require laravel/valet
答案 1 :(得分:2)
基本上有两种方法称为同一种,一种称为
/Users/marc/.composer/vendor/hoa/core/Protocol.php
第1140行
和第57行的/Users/marc/.composer/vendor/laravel/valet/cli/includes/helpers.php
中的另一个。
快速解决方法是删除phpmetrics/phpmetrics
依赖关系并再次运行composer install
好的是,在这两个地方他们都会检查函数是否存在,所以你可以自己声明它。
如果在加载vendor/autoload.php
文件之前声明自己的版本,如果您可以控制它。所以你可以声明它在Laravels helpers.php
答案 2 :(得分:0)
我看到你解决了你的问题,但后人:
您可能已经跑过:composer global require "laravel/laravel"
然后跑:composer global require "laravel/installer"
运行:composer global remove "laravel/laravel"
以摆脱重复。