Вполне возможно, вы просто получите несколько более сложные конфигурации:
# services for all src/*/ directories, ecxluding
App\:
resource: '../src/*'
exclude:
- ../src/Tests/
- ../src/Kernel.php
- '../src/*/{Entity,Migrations}'
App\Blog\Controller\:
resource: '../src/Blog/Controller'
tags: ['controller.service_arguments']
# repeat for other sub-directories
# App\Main\Controller\:
Чтобы использовать Maker Bundle, дайте ему более конкретный путь
# config/packages/dev/maker.yaml
# create this file if you need to configure anything
maker:
# tell MakerBundle that all of your classes lives in an
# Acme namespace, instead of the default App
# (e.g. Acme\Entity\Article, Acme\Command\MyCommand, etc)
root_namespace: 'App\Blog\'
Так как этовсе по-прежнему одно и то же приложение, вы можете избежать макета «поддельной связки», инвертировав его и сгруппировав каждый тип класса по разделам:
src/
- Controller/
-- Blog/
-- Main/
- Entity
-- Blog/
-- Main/
Это не потребует никаких изменений конфигурации в стандартном стиле.