运行 composer show -p vendor/package-name 可查看包的源码下载地址(Git 仓库 URL 或 ZIP 下载链接),需确保包名格式为 vendor/name,-p 实际表示显示源位置而非平台信息。

直接运行 composer show -p vendor/package-name 即可查看该包的源码下载地址(如 Git 仓库 URL 或 ZIP 包地址)。
确认包名格式是否正确
Composer 包名必须是 vendor/name 格式,例如 monolog/monolog、laravel/framework。如果只输 monolog 或 framework,命令会报错或找不到包。
- 不确定包名?先运行
composer show列出所有已安装包 - 想查未安装的包?加
--all参数:composer show -p --all monolog/monolog
理解 -p 输出的实际含义
-p(即 --platform 的缩写)在这里其实是历史遗留命名误差——它**并非指平台信息**,而是触发 Composer 显示包的“源位置”(source),即实际拉取代码的位置:
- 对 Git 包:显示
git://、https://或ssh://形式的仓库地址 - 对 dist 包(ZIP/TAR):显示
dist.url字段,通常是 GitHub/GitLab 的归档下载链接 - 若包通过 path repository 本地引入,则显示本地路径
配合 composer show 查看完整元数据
仅看 URL 不够?用不带 -p 的命令获取更全面信息:
-
composer show vendor/package-name:显示版本、描述、依赖、关键词等 - 其中
source行对应-p的输出,dist行则给出压缩包 URL 和校验值 - 注意:某些包可能同时定义了 source 和 dist,Composer 默认优先使用 dist(更快更稳定)
排查 URL 不可见的情况
执行 composer show -p 却没看到 URL?常见原因:
- 包未安装成功(如 require 失败),先检查
composer install是否完成 - 包是通过
package类型手动定义在repositories中,且未显式声明source或dist - 使用了私有仓库但认证失败,Composer 可能跳过 source 信息 —— 尝试先运行
composer update --lock刷新 lock 文件










