Symfony flex(3.4)在服务和路由

时间:2017-11-17 11:52:18

标签: autowired symfony-3.4

我的团队致力于symfony flex项目。它对我们来说有点新鲜。我的作曲家档案:

{
"type": "project",
"license": "proprietary",
"minimum-stability": "dev",
"require": {
    "php": "^7.1",
    "symfony/console": "^3.4",
    "symfony/flex": "^1.0",
    "symfony/framework-bundle": "^3.4",
    "symfony/lts": "^3",
    "symfony/yaml": "^3.4",
    "guzzlehttp/guzzle": "~6.0",
    "league/flysystem-aws-s3-v3": "^1.0",
    "oneup/flysystem-bundle": "^2.0",
    "php-amqplib/rabbitmq-bundle": "^1.13"
},
"require-dev": {
    "symfony/dotenv": "^3.4",
    "behat/behat": "^3.4",
    "behat/symfony2-extension": "^2.1",
    "mockery/mockery": "^1.0",
    "phpunit/phpunit": "^6.4"
},
"config": {
    "preferred-install": {
        "*": "dist"
    },
    "sort-packages": true
},
"autoload": {
    "psr-4": {
        "App\\": "src/"
    }
},
"autoload-dev": {
    "psr-4": {
        "App\\Tests\\": "tests/"
    }
},
"scripts": {
    "auto-scripts": {
        "cache:clear": "symfony-cmd"
    },
    "post-install-cmd": [
        "@auto-scripts"
    ],
    "post-update-cmd": [
        "@auto-scripts"
    ]
},
"conflict": {
    "symfony/symfony": "*"
},
"extra": {
    "symfony": {
        "id": "01BY8F14MYNYFXEQV8P8QRJQHS",
        "allow-contrib": false
    }
}

}

当我运行composer install时,我得到以下错误:

    Script cache:clear returned with error code 1
!!  PHP Warning:  Module 'apcu' already loaded in Unknown on line 0
!!
!!  In DefinitionErrorExceptionPass.php line 37:
!!
!!    Cannot autowire service "App\Services\ApiRequestValidator": argument "$secr
!!    et" of method "__construct()" must have a type-hint or be given a value exp
!!    licitly.
!!
!!
!!

在进行作曲家安装时,我们观察到symfony在config文件夹中创建了service.yaml文件。我们只想使用PHP-based configuration for services and routes中定义的基于php的配置。

如果删除service.yaml文件并再次运行composer install,则效果很好。 我不知道为什么symfony在我的配置文件夹中已经基于php的服务配置时显式创建了service.yaml文件。

这也阻止了我的Docker容器。

0 个答案:

没有答案