Class 未找到使用自定义作曲家包

Class not found using custom composer package

我已经创建了一个自定义的 comoposer 包,我想在我的项目中使用它 composer.json:

{
    "name": "papillon/test",
    "type": "library",
    "version": "dev-master",
    "require": {
        "php": "^7.1.11"
    },
    "autoload": {
        "psr-4": {
            "Papillon\Fountaine\Eau\": "src/Papillon/Fountaine/Eau/"
        }
    }  
}

我把它压缩成zip。在主项目中,我添加了一个名为 repo 的文件夹,我在其中添加了 de composer package zip。然后,我像这样修改主项目的composer.json:

{
    "repositories": [
        {
            "type": "artifact",
            "url": "var/main/repo"
        }
    ],
    "require": {
        "papillon/test": "dev-master"
    }
    
}

我执行 composer update 并将 pakage 添加到 vendor 文件夹;一切似乎都很顺利......但是如果我想用这个脚本测试主项目中的包:

<?php

require (__DIR__ . '/vendor/autoload.php');
use Papillon\Fountaine\Eau\FlowerClass;

echo FlowerClass::bloom();

它returns:PHP 致命错误:未捕获错误:Class 'Papillon\Fountaine\Eau\FlowerClass' 未在.../test_package.php 中找到:6 堆栈跟踪: #0 {主要} 在第 6 行

中抛出 .../test_package.php

我认为这个包可能无法被主项目识别;也许包在主项目中安装不正确?

调试自动加载对于捕获错误非常有用。注意路由路径,自动加载试图在包 composer.json 中用小写文件夹的路径中找到 类 文件,路由是用大写文件夹定义的。