2014-04-04 43 views
0

我试图在现有项目中安装Cakephp Ratchet Plugin。 我的CakePHP版本是2.4.3。 它说按照this link已下列步骤:cakephp websocket棘轮安装错误

$ cd myproject/app/ 
$ curl -s https://getcomposer.org/installer | php 
$ php composer.phar require --no-update opauth/opauth:dev-wip/1.0 opauth/twitter:dev-  wip/1.0 
$ php composer.phar config vendor-dir Vendor 
$ php composer.phar install 

我不是很熟悉的作曲家,当我这样做的最后一步,它显示了以下错误....

Your requirements could not be resolved to an installable set of packages. 

Problem 1 
- The requested package opauth/opauth could not be found in any version, there may be a typo in the package name. 
Problem 2 
- The requested package opauth/twitter could not be found in any version, there may be a typo in the package name. 

Potential causes: 
- A typo in the package name 
- The package is not available in a stable-enough version according to your minimum-stability setting 

编辑: Composer.json是这样

{ 
"require": { 
"opauth/opauth": "dev-wip/1.0", 
    "opauth/twitter": "dev-wip/1.0" 
}, 
"config": { 
    "vendor-dir": "Vendor" 
} 
    } 
+0

据我了解,文档只是指作曲家和引导配置,而不是这些opauth包!你的项目是否有'composer.json'文件?如果是这样,它看起来是什么样子,放在哪里? ps,请始终提及您的确切CakePHP版本! – ndm

+0

我编辑并添加了composer.json文件。 – Nemesis

回答

1

正如我的评论已经提到,棘轮插件已经无关Opauth,关于ceeram.github.io的链接文章应仅作为如何配置Composer和CakePHP引导程序的示例。

然而,在CakePHP的作曲家自动加载,我建议指CakePHP的食谱,即使你不通过作曲,包括CakePHP的本身:

http://book.cakephp.org/2.0/en/installation/advanced-installation.html

长话短说,什么在“入门/ 2作曲”文档要你做插件的部分,是要求棘轮插件,以确保供应商目录指向/app/Vendor/,并在您作曲家自动加载磁带机。

composer.json(假设它放在/app

{ 
    "require": { 
     "wyrihaximus/ratchet": "dev-master" 
    }, 
    "config": { 
     "vendor-dir": "Vendor" 
    } 
} 

bootstrap.php中(按菜谱)

// Load Composer autoload. 
require APP . '/Vendor/autoload.php'; 

// Remove and re-prepend CakePHP's autoloader as Composer thinks it is the 
// most important. 
// See: http://goo.gl/kKVJO7 
spl_autoload_unregister(array('App', 'load')); 
spl_autoload_register(array('App', 'load'), true, true); 

运行composer installcomposer update,你应该是不错的。

+0

我能够做到这一点...你能解释我的下一步呢...设置棘轮和asssetcompress ...谢谢你.. – Nemesis

+0

我添加了“CakePlugin :: load('Ratchet',array('bootstrap' => true));“在bootstrap.php中,并执行“> cd {Your Cake Project}/app/Console/ > chmod + x cake > ./cake Ratchet.websocket start” 但它显示: 您的配置似乎不支持' EXT-的libevent”。我们高度推荐您安装和配置它,因为它在流选择上提供显着的性能提升! – Nemesis

+0

@Nemesis AFAICT这是一个警告,而不是一个错误。 [**'ext-libevent' **](http://www.php.net/manual/en/book.libevent.php)是[**'reactphp/event-loop ** ** ](https://github.com/reactphp/event-loop/blob/v0.4.0/composer.json)。然而,我不熟悉ratchet或reactphp,所以除了让你熟悉这些库的工作方式以外,我不能给出任何可靠的建议。 – ndm