Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Composer包在安装时复制目录_Php_Symfony_Composer Php_Dependency Management - Fatal编程技术网

Php Composer包在安装时复制目录

Php Composer包在安装时复制目录,php,symfony,composer-php,dependency-management,Php,Symfony,Composer Php,Dependency Management,我有一个本地依赖项,它托管在私有Gitlab repo上。然而,我很难通过Composer将其引入到我的项目中 PHP Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle". Did you for

我有一个本地依赖项,它托管在私有Gitlab repo上。然而,我很难通过Composer将其引入到我的项目中

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
My
composer.json

"require": {
    "crmpicco/GolfBundle": "dev-master"
},
"repositories": [
    {
        "type": "package",
        "package": {
        "name": "crmpicco/GolfBundle",
        "version": "dev-master",
        "source": {
            "url": "https://git.crmpicco.com/rfc1872/golfbundle.git",
            "type": "git",
            "reference": "master"
        },
        "autoload": {
            "psr-4": {
                "crmpicco\\GolfBundle\\": ""
            }
        }
        }
    }
],
PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
当我查看供应商目录时,目录会在我不希望的情况下加倍,例如。
/vendor/crmpicco/GolfBundle/crmpicco/GolfBundle

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
当我运行
composer update crmpicco\GolfBundle
时,当Symfony尝试执行缓存时,我收到以下错误:清除:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache处理更新后cmd事件时异常终止

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
[运行时异常]
执行“'cache:clear--no warmup'”命令时出错:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
我在
composer.json
设置中遗漏了什么/做错了什么

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
Bundle dir结构:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
/crmpicco
   /GolfBundle
      /Component      
      /DependencyInjection
      crmpiccoGolfBundle.php
Bundle composer.json:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
{
  "name": "crmpicco/GolfBundle",
  "type": "library",
  "description": "A Symfony 2 bundle which provides an easy way to handle billing and subscriptions.",
  "license": "MIT", 
  "require": {
    "php": ">=7.0",
    "symfony/config": "~2.8.34",
    "symfony/dependency-injection": "~2.8.34",
    "symfony/http-kernel": "~2.8.34",
  },
  "autoload": {
    "psr-4": {
      "crmpicco\\GolfBundle\\": ""
    }
  },
  "extra": {
    "symfony-app-dir": "app",
    "symfony-web-dir": "web",
    "symfony-assets-install": "relative"
  }
}

嗯。正如我看到的,您在包的
composer.json

您必须将其更改为以下内容:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
"autoload": {
    "psr-4": {
        "crmpicco\\GolfBundle\\": "crmpicco/GolfBundle"
    }
}

另外,如果不想复制目录,请将捆绑包的内容移动到根目录,然后不要更改
composer.json
内容。Dirs重复,因为Composer基于
name
属性创建dir结构,该属性在您的情况下也是
crmpicco/GolfBundle

对于包含有效
Composer.json
的存储库,不应使用
package
类型。此类型是为没有
composer.json
的包设计的,因此此文件将被完全忽略,与包中的更新相同

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
在您的情况下,最好将其定义为
git

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted   
  to load class "crmpiccoGolfBundle from namespace "crmpicco\GolfBundle".         
  Did you forget a "use" statement for "crmpicco\GolfBundle\crmpiccoGolfBundle"?   
  in /var/www/crmpicco/symfony/app/AppKernel.php:31   
"repositories": [
    {
        "type": "git",
        "url": "https://git.crmpicco.com/rfc1872/golfbundle.git"
    }
],

你能把你的高尔夫球杆的目录结构粘贴到这里吗?它是
composer.json
?@NikitaLeshchev,当然可以。我已经更新了这个问题。我的bundle dir中没有
composer.json
。@NikitaLeshchev为混淆道歉,我已将属于我的bundle的
composer.json
添加到上述问题中。这很有帮助,我已设法摆脱了折叠目录,但我似乎无法在
AppKernel
中加载该bundle。在
registerBundles
内部,我正在这样做:
new crmpicco\GolfBundle\crmpicco GolfBundle(),
在我的
供应商
目录中,我有:
/vendor/crmpicco/GolfBundle
其中包含所有的代码,包括
crmpiccoGolfBundle.php
我得到的错误:
php致命错误:未捕获Symfony\Component\Debug\Exception\ClassNotFoundException:试图加载类“crmpiccoGolfBundle”从名称空间“crmpicco\GolfBundle.”
我看不出哪里出了问题……包的
composer.json
自动加载
部分如下所示:
“自动加载”:{“psr-4”:{“crmpicco\\GolfBundle\\”:“},
。我还应该指出,我已使用
composer clear cache
刷新了composer缓存。非常感谢您的帮助。@crmpicco您使用哪个版本的symfony?我使用的是2.8 LTS。@crmpicco Try
composer dump autoload
。还要检查类的命名空间
crmpiccoGolfBundle
。可能在类命名或名称空间中有任何错误