CakePHP 3 Composer 安装错误

CakePHP 3 Composer Installation Error

我正在尝试使用以下命令创建一个项目,如官方Bookmarker Tutorial所示:

composer create-project --prefer-dist cakephp/app bookmarker

然后我看到以下错误:

[RuntimeException]
Could not load package cakephp/migrations in http://packagist.org: [UnexpectedValueException] Could not parse version constraint >=0.4.2 <1.0: Invalid version string "0.4.2 <1.0"

[UnexpectedValueException]
Could not parse version constraint >=0.4.2 <1.0: Invalid version string "0.4.2 <1.0"

然后我 运行 bin/cake server 并看到以下错误:

PHP Warning: require(/Library/WebServer/Documents/bookmarker/vendor/autoload.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/bookmarker/config/bootstrap.php on line 23 PHP Stack trace: PHP 1. {main}() /Library/WebServer/Documents/bookmarker/bin/cake.php:0 PHP 2. include() /Library/WebServer/Documents/bookmarker/bin/cake.php:31

Warning: require(/Library/WebServer/Documents/bookmarker/vendor/autoload.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/bookmarker/config/bootstrap.php on line 23

Call Stack: 0.0010 227136 1. {main}() /Library/WebServer/Documents/bookmarker/bin/cake.php:0 0.0021 237624 2. include('/Library/WebServer/Documents/bookmarker/config/bootstrap.php') /Library/WebServer/Documents/bookmarker/bin/cake.php:31

PHP Fatal error: require(): Failed opening required '/Library/WebServer/Documents/bookmarker/vendor/autoload.php' (include_path='.:/usr/local/Cellar/php55/5.5.21/lib/php') in /Library/WebServer/Documents/bookmarker/config/bootstrap.php on line 23 PHP Stack trace: PHP 1. {main}() /Library/WebServer/Documents/bookmarker/bin/cake.php:0 PHP 2. include() /Library/WebServer/Documents/bookmarker/bin/cake.php:31

Fatal error: require(): Failed opening required '/Library/WebServer/Documents/bookmarker/vendor/autoload.php' (include_path='.:/usr/local/Cellar/php55/5.5.21/lib/php') in /Library/WebServer/Documents/bookmarker/config/bootstrap.php on line 23

Call Stack: 0.0010 227136 1. {main}() /Library/WebServer/Documents/bookmarker/bin/cake.php:0 0.0021 237624 2. include('/Library/WebServer/Documents/bookmarker/config/bootstrap.php') /Library/WebServer/Documents/bookmarker/bin/cake.php:31

我的系统是 OS X Yosemite 10.10.2,我的 PHP 版本是 5.5.21 并且启用了国际扩展。

有人遇到过这个问题或类似问题吗?有什么解决办法吗?

运行 先执行命令(如果全局安装了 composer,您可能需要在前面加上 sudo

composer self-update 

再来一次

composer create-project --prefer-dist cakephp/app bookmarker

安装 CakePHP3.2 的最新方法是:

curl -s https://getcomposer.org/installer | php

php composer.phar create-project --prefer-dist cakephp/app bookmarker

首先找出你使用的PHP是哪个版本,然后找出它所在的位置。

> php -v
PHP 5.5.34 (cli) (built: Apr 22 2016 19:16:58) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies

> which php
/usr/bin/php

您需要 php 版本 7 作为主要版本。我知道有两种选择。

  1. 复制 MAMP php 文件以替换您的 /usr/bin/php 文件(您可能还想备份它。

    (sudo mv /usr/bin/php /usr/bin/php5.5.34; sudo cp /Applications/MAMP/bin/php/php7.0.0/bin /usr/bin/php)

  2. 将您的系统 $PATH 变量设置为 php7 bin 目录的 MAMP 路径。您还可以将此行添加到您的 ~/.profile 中,这样它就会在您每次启动终端时加载。

    export PATH="/Applications/MAMP/bin/php/php7.0.0/bin:$PATH";

完成这些更改后,您应该可以毫无问题地安装蛋糕,您的蛋糕烘焙命令也应该可以正常工作。

如果您进入您的应用程序文件夹并且 运行

composer install 

它可能会修复它。

如果帮我解决!

谢谢