使用Composer为Symfony 2.1安装LiipImagineBundle

时间:2012-10-02 19:25:49

标签: symfony composer-php liipimaginebundle

LiipImagineBundle似乎没有使用composer(github page)安装自己的说明,所以我添加了

"liip/imagine-bundle": "*", 

到我的composer.json并更新。一切都很顺利,直到我尝试使用行

在appKernel.php中注册捆绑包
new Liip\ImagineBundle\LiipImagineBundle(),

Php给出错误

Fatal error: Class 'Liip\ImagineBundle\LiipImagineBundle' not found in C:\xampp\htdocs\xxxx\Symfony\app\AppKernel.php on line 24

据我所知,LiipImagineBundle位于vendors文件夹中的正确位置。任何人都知道我哪里出错了?提前谢谢。

*编辑我应该添加我正在使用symfony 2.1

4 个答案:

答案 0 :(得分:1)

我联系了该捆绑包的开发人员,发现有一个vendor/composer/autoload_namespaces.php,您可以手动添加条目,但捆绑包不存在。

本指南很有帮助:Composer Namespaces in 5 Minutes

答案 1 :(得分:1)

我不得不将作曲家的行改为:

"liip/imagine-bundle": "*@dev"

最后注意 @dev 。这告诉作曲家我愿意接受" dev"稳定性

答案 2 :(得分:0)

我正在使用Symfony 2.1.4-DEV并在composer.json上包含“liip / imagine-bundle”:“*”并更新它的工作

答案 3 :(得分:-1)

您是否在autoload.php注册了Namespace并在AppKernel.php注册了Bundle?如果没有,那么在那里登记之前,不能使用该课程。

正如文件所说:

<?php
// app/autoload.php

$loader->registerNamespaces(array(
    // ...

    'Imagine'   => __DIR__.'/../vendor/imagine/lib',
    'Liip'      => __DIR__.'/../vendor/bundles',
));

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...

        new Liip\ImagineBundle\LiipImagineBundle(),
    );
}

更新

运行composer update它将重新生成您的引导程序文件。告诉我这是否有运气。