使用作曲家自动加载 PSR-4 - 找不到类



我正在创建类型为 library 的作曲家包。并试图要求它到Symfony2项目中。

该软件包具有以下composer.json

{
    "name": "vendor/package-sdk",
    "description": "My private package",
    "type": "library",
    "license": "MIT",
    "autoload": {
        "psr-4": {"Vendor\PackageSDK\": "src/"}
    },
    "require": {
        "php": ">=5.3.3"
    }
}

然后我需要它到我的 SF2 项目中。

"repositories": [
    {
        "type": "git",
        "url": "git@github.com:me/vendor-package-sdk.git"
    },
],
"require": {
    ...
    "vendor/package-sdk": "~0.0.1-alpha1"
    ...
}

当我打电话时

use VendorPackageSDKClient;
...
$client = new Client();
'

''

我得到了致命错误:

PHP Fatal error:  Class 'VendorPackageSDKClient' not found in /path

如果我这样做

composer dump-autoload -o

它有效,但是

composer dump-autoload

不。

文件供应商/作曲家/autoload_psr4.php包含:

'Vendor\PackageSDK\' => array($vendorDir . '/vendor/package-sdk/src'),

谁能告诉我我做错了什么?

在作曲家autoload_classmap.php文件中,我看到了以下行

'供应商\软件包SDK\客户端' => $vendorDir .'/vendor/package-sdk/src/Cilent.php',

所以这只是软件包文件名中的拼写错误

Cilent.php应该是客户端.php

最新更新