2016-03-18 65 views
1

拉入自制作曲包時,拉入的文件與源代碼具有不同的名稱空間大小寫。Composer生成不正確的大寫字母名稱空間


在GitHub包源代碼

composer.json代碼:

"name": "bsapaka/metattribute", 
"autoload": { 
     "psr-4": { 
      "Bsapaka\\Metattribute\\": "src/" 
     } 
    }, 

namespace來源:

namespace Bsapaka\Metattribute;


當拉到項目from Packagist

是作曲家生成autoload_psr4.php線出現的代碼:

'bsapaka\\metattribute\\' => array($vendorDir . '/bsapaka/metattribute/src'), 

出現在供應商文件的命名空間:

namespace bsapaka\Metattribute;

異常當試圖使用它時:

類 'bsapaka \ Metattribute \的AttributeList' 未找到


我試圖改變的源代碼市值。所有大寫字母,全部小寫字母,上面一個較低字母等。每次,psr4路徑和類名稱空間都不會相同,並且異常仍然存在。

回答

0

我拉下了copy of your library並創建了一個PHPUnit測試。我無法重現您的問題。它看起來像你解決了?您現在正在使用namespace Bsapaka\Metattribute

Tests\AttributeTest.php

<?php 

class AttributeTest extends PHPUnit_Framework_TestCase 
{ 
    public function testName() 
    { 
     $attribute = new \Bsapaka\Metattribute\Attribute("Elvis"); 
     $this->assertEquals("Elvis", $attribute->getName()); 
    } 
} 

去上班以上,composer.json現在包括:

"require-dev": { 
    "phpunit/phpunit": "~4.0" 
} 

,並通過推出:vendor/bin/phpunit tests/AttributeTest.php

+0

不過問題在我結束...你通過作曲家拉入? – bsapaka

+0

是的。我必須要求''bsapaka/matattribute「:」dev-master「'因爲它有你的更正的命名空間。 v1.0.0仍然中斷:) –

相關問題