当包被标记为abandoned时,Composer会警告该包已停止维护,建议避免使用。应优先查找作者推荐的替代包,如无则通过Packagist和GitHub评估社区活跃方案,必要时可临时继续使用但需记录技术债,长期应尽快迁移以确保项目稳定与安全。

当你使用 Composer 安装或更新 PHP 包时,如果某个包已被作者标记为“abandoned”(废弃),Composer 会显示类似这样的警告:
Package vendor/package is abandoned, you should avoid using it.这表示该包不再维护,可能存在安全风险、不兼容新版本依赖或不再接收功能更新。以下是处理这类警告的实用方式。
一个包被标记为 abandoned,并不代表它不能用,而是提醒你:
有些项目仍在运行中,但使用废弃包会增加长期维护成本。
当一个包被废弃时,作者可以选择指定一个替代包。Composer 会在警告中提示:
Package vendor/old-package is abandoned, you should avoid using it. Use vendor/new-package instead.如果有推荐替代品:
例如从 guzzlehttp/guzzle3 迁移到 guzzlehttp/guzzle 就是常见场景。
如果没有指定替代包,可以:
比如废弃的 monolog/monolog 替代品?不存在——它并未废弃。但像 ircmaxell/random-lib 被废弃后,社区转向了 paragonie/random_compat 或原生 random_bytes()。
如果你暂时无法替换,仍可继续使用该包,Composer 不会阻止安装。
但注意:
Composer 没有提供关闭 abandoned 警告的选项,因为它有意提醒用户风险。
基本上就这些。遇到 abandoned 包,最好的做法是尽快评估并迁移到活跃维护的替代方案,保障项目长期稳定。虽然短期可用,但拖延只会让问题更难解决。
以上就是composer如何处理 "package is abandoned" 的警告的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号