2017-01-19 46 views
0

我已經使用外部模塊在Bitbucket上創建了一個私有存儲庫,並將其添加到項目的composer.json文件的依賴項列表中。 的問題是,經過「作曲家安裝」我得到了我的模塊在供應商的文件夾下載,但它拋出一個ReflectionException:Yii2自動加載擴展類

類例如\新聞\模塊不存在

外部模塊作曲家。 JSON:

{ 
    "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

"repositories": [ 
    { 
     "type": "package", 
     "package": { 
     "name": "example/yii2-module-news", 
     "version": "master", 
     "source": { 
      "type": "git", 
      "url": "[email protected]:example/yii2-module-news.git", 
      "reference": "master" 
     } 
     } 
    } 
    ] 

供應商/作曲/ autoload_psr4.php do'nt包含新的外部模塊

<?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'), 
); 

回答

0

這作曲家庫配置看起來太複雜的任何錄音功。應該工作更容易,例如:

"repositories": [ 
    { 
     "type": "git", 
     "url": "[email protected]:example/yii2-module-news.git" 
    }, 
    ] 
+0

謝謝,但這個建議不影響結果。 –