composer create-project symfony/framework-standard-edition s334 "3.3.4" bin/console generate:bundle Share across multiple apps: yes namespace: Paul\ArtBundle bundle name: PaulArtBundle Target Directory: src/Refreshed the browser and sure enough I got the class not found message. The generate:bundle command is not updating the autload section of composer.json when a new namespace is introduced. Edit composer.json and:# composer.json "autoload": { "psr-4": { "AppBundle\\": "src/AppBundle", "Paul\\": "src/Paul" }, "classmap": [ "app/AppKernel.php", "app/AppCache.php" ] },Then runcomposer dumpautoloadAnd restart the server(maybe). That should fix the bundle class not found problem. I have not used the generate:bundle command is quite some time ever since the standard was to put everything under AppBundle so I don't know how long this has been "broken". But at least three questions in the last week or so indicates it was something recent. And by the way, when I refreshed the browser I got "Hello World" which threw me for a bit. Turns out the new bundle overrides the / route which is also sort of special. And in case anybody is wondering why this started happening, Symfony 3.2 changed from#composer.json "psr-4": { "": "src/" }, To "psr-4": { "AppBundle\\": "src/AppBundle" },You could always just change it back though I think spelling out individual namespaces might be "better". Not sure. And here is an issue with more details: https://github.com/symfony/symfony-standard/issues/1098 Looks like the maintainer favored a tiny speed improvement over breaking an existing command. Oh well. Symfony Flex is supposed to make everything great again
Thursday, 2 November 2017
Create Bundle In Symfony 3.3.*
Subscribe to:
Posts (Atom)