新闻中心
详解 composer outdated -D 命令如何只检查直接依赖?
直接依赖是项目 composer.json 中 require 或 require-dev 明确声明的包,如 monolog/monolog 和 guzzlehttp/guzzle;-D 参数限制 outdated 命令仅显示这些直接依赖的新版本信息,避免间接依赖干扰,便于聚焦核心包更新。

执行 composer outdated -D 时,Composer 会列出项目中已安装的依赖包,并只显示那些直接声明
在 composer.json 中的包(即“直接依赖”)中存在新版本可用的情况。这个命令不会展示项目间接引入的依赖(也就是“子依赖”),除非你去掉 -D 参数。
什么是直接依赖?
直接依赖是你在项目的 composer.json 文件的 require 或 require-dev 字段中明确写明的包。例如:
"monolog/monolog": "^2.0",
"guzzlehttp/guzzle": "^7.0"
}
上面这两个包就是直接依赖。而这些包自身所依赖的其他库(比如 guzzlehttp/promises、psr/http-client 等)则是间接依赖。
参数 -D 的作用
-D 是 --direct 的缩写,它的作用是限制 outdated 命令的输出范围,仅检查和显示直接依赖是否有更新版本可用。
如果你运行:
composer outdated -D输出结果可能类似:
monolog/monolog 2.0.0 => 2.9.1 Sends your logs to files, sockets, inboxes, databases and various web servicesguzzlehttp/guzzle 7.0.0 => 7.8.1 Guzzle is a PHP HTTP client library
这说明这两个你直接引用的包都有新版可升级。
Songtell
Songtell是第一个人工智能生成的歌曲含义库
164
查看详情
不加 -D 会发生什么?
如果不加 -D,Composer 会检查所有已安装的包(包括间接依赖),输出可能非常长。例如某些底层组件如 psr/container、symfony/polyfill-php80 等也会出现在列表中,即使你没有直接引用它们。
这在排查问题或全面了解项目依赖状态时有用,但大多数情况下,开发者更关心自己直接引入的包是否过时。
实用建议
使用 composer outdated -D 是一个良好的维护习惯,特别是在以下场景:
- 定期检查项目核心依赖是否有安全更新或功能增强
- 准备升级某个主要组件前,确认当前版本是否落后太多
- 减少技术债务,避免长期忽略依赖更新
如果想同时查看开发依赖的过期情况,可以加上 -D 和 --dev:
这样就能分别审视生产环境和开发环境中的直接依赖更新状态。
基本上就这些。这个命令不复杂,但能帮你保持项目依赖清晰可控。
以上就是详解 composer outdated -D 命令如何只检查直接依赖?的详细内容,更多请关注php中文网其它相关文章!
# js
# json
# composer
# php8
# php
# 木材市场网站建设
# 网站优化设计图片大小
# seo营销方式特点seo博客
# 新民电商网站建设要求
# 合肥seo专员招聘
# 千牛查询关键词排名
# 福建小程序网站建设方案
# 湖北省网络营销推广方法
# 网站结构优化操作报告
# 阿克苏网站优化多少钱
# 如果你
# 是一个
# 如何使用
# 新版本
# 尼克
# 不加
# 情况下
# 意大利
# 这两个
# 如何在
# 开发环境
# ai
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
Python多线程中正确使用sigwait处理SIGALRM信号
微博网页版主页入口 微博官方网站免登录访问
jQuery Mask 插件中实现电话号码固定前导零的教程
手机CPU怎么影响游戏体验_手机CPU对游戏性能的影响分析
冬*霸灯泡不亮怎么办_浴霸取暖灯一盏不亮的灯座清洁修复法
Win11怎么设置开机NumLock亮 Win11修改注册表InitialKeyboardIndicators值
Win11 BitLocker密码忘了怎么办 Win11找回BitLocker恢复密钥方法【解决】
C++指针和引用有什么区别_C++内存管理核心概念深度解析
微信商城在哪里打开【步骤】
C++如何实现一个装饰器模式_C++设计模式之动态地给对象添加额外职责
vivo云服务网页版登录 怎么登录vivo云服务网页版
Golang如何处理RPC请求负载均衡_Golang RPC请求负载均衡策略与实践
Android Studio计算器C键功能异常排查与修复教程
如何使用J*aScript精确选择并批量修改特定父元素下子链接的样式
mysql如何设置表访问权限_mysql表访问权限配置
Win10怎么设置静态IP地址 Win10手动配置IP地址步骤【指南】
腾讯视频怎么使用多账号家庭管理_腾讯视频家庭多账号统一管理与权限分配教程
抖音隐秘迷城小游戏入口_ 抖音冒险解谜小游戏秒玩
单12V-2×6实现为RTX 5090供电750W!甚至都没敢跑分
从OpenAI API响应中高效提取生成文本
c++中为什么推荐使用using替代typedef_c++现代化类型别名
c++项目目录结构应该如何组织_c++工程化项目结构规范
GemBox Document HTML转PDF垂直文本渲染问题及解决方案
解决深度学习模型训练初期异常高损失与完美验证准确率问题
Yandex官方入口网址 Yandex俄罗斯搜索引擎最新在线地址
动漫岛观看全网网 动漫岛在线正版动漫入口
想当下一个《2077》?《心之眼》Steam评价升至"多半好评"
如何使用Node.js csv 包按条件移除含空字段的CSV记录
C++如何生成随机数_C++ random库使用方法与范围设置
蛙漫官方正版入口 蛙漫网页在线全集免费观看
React Router v6 教程:构建认证保护的私有路由与重定向策略
sublime侧边栏怎么增强功能_SideBarEnhancements for sublime安装与配置
React Router 嵌套组件中 URL 重定向问题的解决方案
正确连接J*aScript到HTML实现可点击图片与自定义事件处理
俄罗斯搜索引擎Yandex指南 附2025年免登录官网入口
如何使用纯J*aScript判断Input元素是否在特定类容器内
曝R星经典之作开发图 设计简陋但信息密集!
PyTorch模型训练效果不佳?深入剖析常见错误与调试技巧
J*aScript打印功能_j*ascript输出控制
如何优雅地解决Livewire文件上传难题?SpatieLivewireFilepond让一切变得简单
J*aScript中高效管理与清空动态列表:避免循环陷阱
妖精动漫免费平台 妖精动漫官网资源观看网址
FullCalendar 自定义按钮样式定制指南
58动漫网在线官方网 58动漫网正版动漫入口网址
漫蛙2网页版漫画入口 漫蛙漫画在线官方登录
Python vgamepad库按键模拟:正确使用XUSB_BUTTON常量
免费抖音短视频入口_抖音网页版短视频免费通道
Tailwind CSS line-clamp 布局问题解析与修复指南
Typer应用中灵活处理命令行参数的令牌化与解析
京东京造J1和网易云音乐氧气真无线有什么不同_国产电商蓝牙耳机音质对比


2025-12-12
浏览次数:次
返回列表