首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii2自动扩展类

Yii2自动扩展类
EN

Stack Overflow用户
提问于 2017-01-19 10:09:17
回答 1查看 527关注 0票数 0

我使用外部模块在Bitbucket上创建了一个私有存储库,并将其添加到项目的composer.json文件中的依赖项列表中。问题是,在"composer安装“之后,我在供应商文件夹中下载了我的模块,但是它抛出了一个ReflectionException:

类示例\news\Module不存在

外部模块composer.json:

代码语言:javascript
复制
{
    "name": "example/yii2-module-news",
    "description": "News",
    "type": "yii2-extension",
    "keywords": ["yii2", "extension", "news"],
    "authors": [
        {
            "name": "me"
        }
    ],
    "autoload": {
        "psr-4": {
            "example\\news\\": ""
        }
    },
    "require": {
        "2amigos/yii2-ckeditor-widget" : "~1.0",
        "kartik-v/yii2-widgets": "*",
        "kartik-v/yii2-grid": "@dev",
        "kartik-v/yii2-editable": "@dev",
        "kartik-v/yii2-krajee-base": "@dev",
        "kartik-v/yii2-helpers": "*",
        "kartik-v/yii2-mpdf"    : "*"
    }
}

项目composer.json

代码语言:javascript
复制
"repositories": [
    {
      "type": "package",
      "package": {
        "name": "example/yii2-module-news",
        "version": "master",
        "source": {
          "type": "git",
          "url": "git@bitbucket.org:example/yii2-module-news.git",
          "reference": "master"
        }
      }
    }
  ]

供应商/composer/autoload_psr4.php不包含任何新的外部模块

代码语言:javascript
复制
<?php

// autoload_psr4.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'yii\\twig\\' => array($vendorDir . '/yiisoft/yii2-twig'),
    'yii\\swiftmailer\\' => array($vendorDir . '/yiisoft/yii2-swiftmailer'),
    'yii\\jui\\' => array($vendorDir . '/yiisoft/yii2-jui'),
    'yii\\gii\\' => array($vendorDir . '/yiisoft/yii2-gii'),
    'yii\\faker\\' => array($vendorDir . '/yiisoft/yii2-faker'),
    'yii\\debug\\' => array($vendorDir . '/yiisoft/yii2-debug'),
    'yii\\composer\\' => array($vendorDir . '/yiisoft/yii2-composer'),
    'yii\\codeception\\' => array($vendorDir . '/yiisoft/yii2-codeception'),
    'yii\\bootstrap\\' => array($vendorDir . '/yiisoft/yii2-bootstrap'),
    'yii\\' => array($vendorDir . '/yiisoft/yii2'),
    'voskobovich\\behaviors\\' => array($vendorDir . '/voskobovich/yii2-many-many-behavior/src'),
    'skeeks\\widget\\chosen\\' => array($vendorDir . '/skeeks/yii2-widget-chosen'),
    'rmrevin\\yii\\fontawesome\\' => array($vendorDir . '/rmrevin/yii2-fontawesome'),
    'mihaildev\\elfinder\\' => array($vendorDir . '/mihaildev/yii2-elfinder'),
    'kartik\\tree\\' => array($vendorDir . '/kartik-v/yii2-tree-manager'),
    'kartik\\select2\\' => array($vendorDir . '/kartik-v/yii2-widget-select2'),
    'kartik\\growl\\' => array($vendorDir . '/kartik-v/yii2-widget-growl'),
    'kartik\\form\\' => array($vendorDir . '/kartik-v/yii2-widget-activeform'),
    'kartik\\dialog\\' => array($vendorDir . '/kartik-v/yii2-dialog'),
    'kartik\\datetime\\' => array($vendorDir . '/kartik-v/yii2-widget-datetimepicker'),
    'kartik\\daterange\\' => array($vendorDir . '/kartik-v/yii2-date-range'),
    'kartik\\date\\' => array($vendorDir . '/kartik-v/yii2-widget-datepicker'),
    'kartik\\base\\' => array($vendorDir . '/kartik-v/yii2-krajee-base'),
    'dosamigos\\ckeditor\\' => array($vendorDir . '/2amigos/yii2-ckeditor-widget/src'),
    'dmstr\\' => array($vendorDir . '/dmstr/yii2-adminlte-asset'),
    'creocoder\\nestedsets\\' => array($vendorDir . '/creocoder/yii2-nested-sets/src'),
    'cebe\\markdown\\' => array($vendorDir . '/cebe/markdown'),
    'Faker\\' => array($vendorDir . '/fzaninotto/faker/src/Faker'),
);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-19 23:02:57

这个作曲家存储库的配置看起来太复杂了。工作应该容易得多,例如:

代码语言:javascript
复制
  "repositories": [
    {
        "type": "git",
        "url": "git@bitbucket.org:example/yii2-module-news.git"
    },
  ]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41739049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档