composer包名严格区分大小写,monolog/monolog与monolog/monolog被视为不同包;大小写错误、私有包未配置repositories、镜像同步延迟或php版本不兼容均会导致“package not found”报错。

包名大小写不对,Composer 就当它不存在
Composer 的包名是严格区分大小写的,monolog/monolog 和 Monolog/Monolog 在它眼里是两个完全不同的包。一旦大小写错一位,就会直接返回 Could not find package,而不是提示“接近的包名”。
- 打开 Packagist 页面确认真实路径:
https://packagist.org/packages/vendor/name(把vendor/name换成你输的完整名字),看是否 404 - 别从网页、微信或文档里复制包名——里面可能混入全角斜杠
/、零宽空格或换行符;建议在记事本里重打一遍再粘贴 -
spatie/laravel-backup写成spatie/backup或spatie/laravel-backup-php都会失败,vendor 和 name 必须一字不差
私有包或 GitHub 仓库没配 repositories,等于没告诉 Composer 去哪找
Composer 默认只查 packagist.org。你写了 myorg/my-private-package,但它既没上 Packagist,又没在 composer.json 里声明 repositories,那它就真找不到。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- Git 类型必须写
"type": "vcs",不能写"type": "git"或漏掉type - URL 必须是可
git clone的地址,比如"https://github.com/myorg/my-package.git",不能是网页链接https://github.com/myorg/my-package - 多个源时,私有源要放在
repositories数组最前面,否则 Composer 查到 packagist.org 上同名包就停了 - 加一句
{"packagist.org": false}显式禁用默认源,避免干扰
镜像源没同步,或者缓存里还存着旧的 packages.json
国内镜像(如阿里云)同步有 5–30 分钟延迟,新发布的包可能还没入库;更隐蔽的是,Composer 会复用本地未过期(默认 15 分钟)的元数据缓存,即使你刚切回官方源,它也可能继续读旧缓存。
- 访问镜像 URL 验证:
https://mirrors.aliyun.com/composer/p/vendor/name.json,如果 404 或内容不含你要的版本,就是镜像没同步 -
composer clear-cache不够,得删具体缓存路径:rm -rf ~/.composer/cache/repo/https---mirrors-aliyun-com-composer - 临时切回官方源验证:
composer config --global repo.packagist composer https://packagist.org,再跑composer require vendor/name -vvv
PHP 版本或 stability 约束让 Composer “假装找不到”
这不是网络问题,而是依赖解析器直接过滤掉了所有可用版本。比如 spatie/laravel-ray v1.30+ 要求 PHP ≥ 8.0,你在 PHP 7.4 下执行 composer require spatie/laravel-ray,就会报 Package not found,而不是 “PHP version too low”。
- 运行
php -v和composer --version,再去 Packagist 页面点开该包的 Requires 标签页,核对php和composer-plugin-api约束 -
minimum-stability设为stable时,dev-main或v2.0.x-dev版本会被跳过,错误表现仍是 “not found” - 临时放宽约束可加
--stability=dev,但别长期用--ignore-platform-reqs










