符号链接供应商包上的映射异常

时间:2016-05-10 10:50:40

标签: php symfony mapping fosuserbundle autoload

我得到了symfony3应用程序,它使用了我想要在运行时修改的其他两个symfony包,而无需反复提交,推送和更新作曲家。

我已经composer install下载了它们,所以结构看起来像是

app/vendor/
|
+--company/
   |
   +--bundle1
   |
   +--bundle2

一切都很完美。

比我下载的存储库和我的主项目处于同一级别所以我有:

projects/
|
+---app/
|
+---bundle1/
|
+---bundle2/

当我尝试将其符号链接到供应商文件夹

cd project/app/vendor/company
rm -rf bundle1
ln -s project/bundle1 bundle1

Symfony给了我错误

MappingException in MappingException.php line 96:
Class 'Company\Bundle1\Entity\User' does not exist

由于FOSU​​serBundle配置而出现问题

fos_user:
    db_driver:              orm # Required
    firewall_name:          main # Required
    user_class:             Company\Bundle1\Entity\User # Required

使用Symfony3 我试图做composer dump-autoload没有成功 - 同样的错误。

查看了这些主题(以及更多关于堆栈的内容):

http://www.askjong.com/howto/use-local-repository-with-composer https://github.com/composer/composer/issues/1299

我的Apache2.4服务器配置有" FollowSymLinks"选项已添加。 命名空间没问题 - 它在正常安装时有效。

感谢您的帮助:)

1 个答案:

答案 0 :(得分:0)

好的,有一点需要记住 - 如果你有这样一个奇怪的问题 - 它必须做一些事情:

  1. 缓存
  2. 构造
  3. 文件权限
  4. 在我的情况下,它是权限 - 我链接的bundle1 chmod +x -R ./Entity 目录没有权限执行。

    text-align:center

    解决了这个问题, 傻了我