2013-11-26 52 views
3

我在我的根文件composer.json,它看起来像这样(以下this guide后):的Yii 1.1.14与作曲家自动加载

{ 
    "repositories": [{ 
    "type":"composer", 
    "url": "http://packages.phundament.com" 
    }], 

    "require": { 
    "php": ">=5.3.2", 
    "yiisoft/yii": "1.1.*", 
    "yiiext/migrate-command": "0.7.2", 
    "thyseus/yii-user-management": "0.8" 
    }, 

    "autoload": { 
    "psr-0": { "config": "./" } 
    }, 

    "scripts": { 
     "pre-install-cmd": "config\\ComposerCallback::preInstall", 
     "post-install-cmd": "config\\ComposerCallback::postInstall", 
     "pre-update-cmd": "config\\ComposerCallback::preUpdate", 
     "post-update-cmd": "config\\ComposerCallback::postUpdate", 
     "post-package-install": ["config\\ComposerCallback::postPackageInstall"], 
     "post-package-update": ["config\\ComposerCallback::postPackageUpdate"] 
    } 
} 

我的config/console.php还包括以下内容:

'params' => array(
    'composer.callbacks' => array(
     // args for Yii command runner 
     'yiisoft/yii-install' => array('yiic', 'webapp', dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'..'), 
     'post-update' => array('yiic', 'migrate'), 
     'post-install' => array('yiic', 'migrate'), 
    ), 
), 

我收到以下错误,但是,当我尝试运行composer install

类配置\ ComposerCa llback不是自动加载的,不能调用pre-update-cmd脚本

我意识到它可能是我忘记的东西,任何帮助将不胜感激!

+0

所以在路径'config/ComposerCallback.php'中有一个文件,它包含'namespace config; class ComposerCallback {}'? – Sven

+0

我推测这是Yii制作的,因为指南根本没有提到它(我第一次编写Yii应用程序)。 –

+0

该指南有一个链接到演示文件内容,似乎做了一些基本的东西。我想你应该复制它。 – Sven

回答

1

看起来您使用的是早期版本的Phundament,如this one

您的作曲家回调试图调用ComposerCallback类中的方法,在您的情况下 - 应该在<project-folder>/config

您可以从上面使用的文件,并把它放在那里或从phundament /应用抢a more recent version和文件放入<project-folder>/src/Phundament和更新您的根composer.jsonautoloading section以匹配新的文件位置。