Symfony 2,autoload.php在错误目录中生成

Symfony 2,autoload.php在错误目录中生成,symfony,composer-php,symfony-2.1,Symfony,Composer Php,Symfony 2.1,我正在使用symfony 2并尝试运行composer安装-忽略平台需求 它以前工作过,但现在在一个新的设置中,我得到一个错误require\u onceapp/autoload.php:无法打开流:没有这样的文件或目录 完整错误如下: 使用包信息加载composer存储库 安装依赖项,包括需要从锁文件安装开发 警告:锁文件不是composer.json中最新更改的最新版本。您可能会得到过时的依赖项。运行update来更新它们。 没有要安装或更新的内容 生成自动加载文件 >Sensio\Bund

我正在使用symfony 2并尝试运行composer安装-忽略平台需求

它以前工作过,但现在在一个新的设置中,我得到一个错误require\u onceapp/autoload.php:无法打开流:没有这样的文件或目录

完整错误如下:

使用包信息加载composer存储库 安装依赖项,包括需要从锁文件安装开发
警告:锁文件不是composer.json中最新更改的最新版本。您可能会得到过时的依赖项。运行update来更新它们。 没有要安装或更新的内容 生成自动加载文件 >Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap 警告:require_onceapp/autoload.php:未能打开流:第29行的/Users/macbook/www/myproject/source/vendor/sensio/distribution bundle/sensio/bundle/DistributionBundle/Resources/bin/build_bootstrap.php中没有此类文件或目录 致命错误:require_once:无法在第29行的/Users/macbook/www/myproject/source/vendor/sensio/distribution bundle/sensio/bundle/DistributionBundle/Resources/bin/build_bootstrap.php中打开所需的“app/autoload.php”include_path=” 脚本Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap处理安装后cmd事件时异常终止 [运行时异常] 生成引导文件时出错。 问题是它以前是有效的。所以看起来app/autoload.php总是在正确的位置。现在我正在进行新的安装,但它不在那里

我能够在vendors/autoload.php中找到autoload.php,但不确定它为什么位于错误的位置

My composer.json:

{
    "name": "symfony/framework-standard-edition",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.1.*",
        "doctrine/orm": ">=2.2.3,<2.4-dev",
        "doctrine/doctrine-bundle": "1.0.*",
        "twig/extensions": "1.0.*@dev",
        "symfony/assetic-bundle": "2.1.*",
        "symfony/swiftmailer-bundle": "2.1.*",
        "symfony/monolog-bundle": "2.1.*",
        "sensio/distribution-bundle": "2.1.*",
        "sensio/framework-extra-bundle": "2.1.*",
        "sensio/generator-bundle": "2.1.*",
        "jms/security-extra-bundle": "1.2.*",
        "jms/di-extra-bundle": "1.1.*",
        "kriswallsmith/assetic": "1.1.*@dev",
        "doctrine/mongodb-odm-bundle": "3.0.*",
        "snc/redis-bundle": "2.1.*@dev",
        "doctrine/doctrine-fixtures-bundle": "dev-master",
        "incenteev/composer-parameter-handler": "~2.0"
    },
    "minimum-stability": "dev",
    "scripts": {
        "post-install-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ],
        "post-update-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ],
        "update-parameters": [
            "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters"
        ]
    },
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "incenteev-parameters": {
            "file": "app/config/parameters.yml",
            "env-map": {
                "mongodb_server": "MONGODB_SERVER"

            }
        }
    }
}

安装后,composer从以下文件运行脚本:,该文件获取配置键symfony app dir的路径,并从文件调用下一个脚本:


如果您没有autoload.php文件,可能需要从文件中复制它。

警告:锁定文件不是composer.json中最新更改的最新版本。看起来有人搞乱了composer.json,没有创建新的锁文件。可能会尝试删除锁定文件并再次更新。可能不行。app/autoload.php应该已经签入到您的源代码存储库中。除了一个新项目,它不会被生成。只需从一个正在运行的应用程序中复制它即可。没错,它本应该存在,但由于意外而被删除。