Php 正在供应商下移动默认AppBundle
我有一个新的symfony项目。默认情况下,它包含Php 正在供应商下移动默认AppBundle,php,symfony,Php,Symfony,我有一个新的symfony项目。默认情况下,它包含 -/AppBundle -AppBundle.php --/Controller --/Default Controller 因为我将有更多的捆绑包,我希望它在一个名为MyProject的VendorName下,我有我的ApiBundle 我尝试过手动移动AppBundle,然后更改文件、yml文件和AppKernel中的名称空间。但我还是犯了一个错误 Expected to find class "AppBundle\AppBundle"
-/AppBundle
-AppBundle.php
--/Controller
--/Default Controller
因为我将有更多的捆绑包,我希望它在一个名为MyProject的VendorName下,我有我的ApiBundle
我尝试过手动移动AppBundle,然后更改文件、yml文件和AppKernel中的名称空间。但我还是犯了一个错误
Expected to find class "AppBundle\AppBundle" in file "/Applications/MAMP/htdocs/healthy-living/src/HealthyLiving/AppBundle/AppBundle.php" while importing services from resource "../../src/HealthyLiving/AppBundle/*", but it was not found! Check the namespace prefix used with the resource.' in /Applications/MAMP/htdocs/healthy-living/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Loader/FileLoader.php:133
是否有任何控制台命令来执行此操作,如果没有,移动它的步骤应该是什么
提前感谢没有控制台命令或过程来执行此操作,因为这不是
供应商
文件夹的设计目的<代码>供应商文件夹用于存储第三方
代码,因此在供应商
中保存您正在开发的捆绑包不是一个好主意
因为我会有更多的包裹
您没有理由不能在src
文件夹中保留多个捆绑包。事实上,当Symfony引入Bundle系统时,src
文件夹包含大量Bundle是很常见的
(请注意,vendor
文件夹几乎总是添加到.gitignore
——这是因为我以前写的内容)
澄清问题内容后编辑:
生成捆绑包的命令似乎在创建没有供应商文件夹的捆绑包时遇到了一些问题:
我不知道您使用的是哪个版本的Symfony,但无论哪种方式,手动创建bundle都是一个好主意,它也解决了您的问题。(您可以不使用供应商名称创建它)您可以将API包上载到存储库(Github、Gitlab、Bitbucket等),然后使用Composer将其作为外部依赖项导入 由于移动太复杂,因为配置文件必须更改,所以我决定做一个变通办法,将其删除,然后通过控制台在同一父级下安装。工作起来很有魅力。尽管cli中可能有此方法。抱歉误解。当我试图在没有父对象的情况下添加包时,它要求提供vendorname。名称空间必须包含供应商名称空间(例如,“VendorName\ApiBundle”而不是简单的“ApiBundle”)。如果您指定了一个供应商名称空间,是否忘记用引号将其括起来(init:bundle“Acme\BlogBundle”)?-这是我参考的供应商名称。默认情况下,AppBundle在那里。当我在控制台中生成ApiBundle时,它要求位于VendorName(例如HealthyLiving)下,我无法使它与AppBundle位于同一目录中。因此,我想将AppBundle移动到HealthyLiving的父文件夹下,如果您可以这样称呼它的话。有可能吗?我已经用console命令生成了ApiBundle,它被放在VendorName-HealthyLiving下,所以我没有这个问题。它是必须在“健康生活”下移动的默认AppBundle