“could not find package”主因是镜像未生效:composer config -g repo.packagist输出为空、null或官方源,说明配置失败;必须用三段式命令(键名+type+带尾斜杠https url)、清缓存、删vendor与composer.lock,并通过install -vvv日志验证真实请求域名。

composer install 报 Could not find package,先确认镜像是否真生效
不是镜像没同步,而是 Composer 根本没连上镜像站——composer config -g repo.packagist 返回空、null 或 https://packagist.org,说明配置失败,所有后续操作都白搭。
必须立刻验证:运行 composer config -g repo.packagist,输出得是类似 {"type": "composer", "url": "https://mirrors.aliyun.com/composer/"} 的完整 JSON;否则别往下试。
镜像 URL 少斜杠或漏 type,导致静默 fallback 到 packagist.org
常见错误写法:composer config -g repo.packagist https://mirrors.aliyun.com/composer(缺末尾 /)或 composer config -g repo.packagist https://mirrors.aliyun.com/composer/(漏中间 composer 类型参数)。这两种都会让 Composer 拼出错误路径,比如 /composerpackages.json,返回 404 或空响应,然后自动回退到官方源。
正确命令只有一条:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/(注意三段式:键名 + type + URL)。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
清缓存是硬性步骤,不执行就永远走旧地址
composer clear-cache 不是可选项,是必须动作。缓存里存着旧的 packages.json 元数据,哪怕镜像已配对,Composer 仍会优先读本地缓存,继续请求 packagist.org。
验证是否走镜像的唯一可靠方式:删掉 vendor/ 和 composer.lock,再跑 composer install -vvv,日志里所有 Downloading 行的域名必须含 mirrors.aliyun.com 或对应镜像域名。
项目级 repositories 字段会屏蔽全局配置
如果 composer.json 里已有 "repositories" 字段(哪怕只是 {"packagist.org": false}),全局镜像会被完全忽略。
检查方法:grep -A5 repositories composer.json
临时解决:composer config --unset repositories(不加 -g)
长期方案:把镜像配置写进项目级,用 composer config repo.packagist composer https://mirrors.aliyun.com/composer/(去掉 -g),它会自动合并进 composer.json 的 repositories 对象中,前提是原字段是对象而非数组。
laravel/framework 这种高频包都找不到,问题一定出在配置或缓存环节,而不是镜像站没同步。










