新闻中心
Composer中的bin-dir配置项有什么作用?(如何自定义二进制文件目录)
Composer 的 bin-dir 配置项用于自定义可执行二进制文件的安装路径,支持项目级配置(如 "bin-dir": "bin")、全局配置(composer config -g)和临时覆盖(--bin-dir),需确保目录存在可写并更新 PATH 环境变量。

Composer 的 bin-dir 配置项用于指定项目中可执行二进制文件(如命令行工具)的安装路径。
它控制 vendor/bin 下的命令软链接或可执行文件存放位置
当你运行 composer require some/package,而该包在 composer.json 中声明了 "bin" 字段(例如 "bin": ["phpunit", "lar*el"]),Composer 默认会把对应的可执行文件(或符号链接)放到 vendor/bin/ 目录下。通过配置 bin-dir,你可以把这个目录改成别的位置,比如 bin/ 或 .bin/。
如何自定义 bin-dir
有三种常用方式:
-
项目级配置(推荐):在项目根目录的
composer.json中添加:
{"config": {"bin-dir": "bin"}}
```
执行 composer install 或 composer update 后,所有 bin 文件就会出现在项目根目录下的 bin/ 中。
Gaga
曹越团队开发的AI视频生成工具
1151
查看详情
-
全局配置:运行
composer config -g bin-dir /usr/local/bin,这样所有项目都会默认使用该路径(注意权限和系统 PATH 是否包含该路径)。 -
临时覆盖:用命令行参数,如
composer install --bin-dir=scripts,仅对当次命令生效。
注意事项和常见问题
自定义 bin-dir 后需注意:
- 确保目标目录存在且可写,否则 Composer 会报错;
- 如果改到项目外(如
/usr/local/bin),要注意避免权限冲突或覆盖系统命令; - 修改后,记得把新路径加入 shell 的
$PATH(尤其是全局或非 vendor/bin 路径),否则终端无法直接运行这些命令; - 某些 IDE 或工具(如 PHPStorm)可能默认只识别
vendor/bin,需手动配置路径。
基本上就这些。不复杂但容易忽略的是路径权限和环境变量同步——改完别忘了让 shell 知道新命令在哪。
以上就是Composer中的bin-dir配置项有什么作用?(如何自定义二进制文件目录)的详细内容,更多请关注php中文网其它相关文章!
# 可执行
# seo是什么服务器
# 海南seo优化报价
# 丹东大型网站建设地址
# 快手推广seo优化
# 海外推广网站哪个好做些
# 网站建设三个方面是什么
# 官网seo操作
# 博罗机械网站建设
# 酒吧网络营销推广方案
# 各大免费推广网站排行榜
# 就会
# 的是
# 如何将
# 配置文件
# php
# 如何解决
# 该怎么
# 命令行
# 有什么
# 自定义
# 常见问题
# 环境变量
# 工具
# composer
# json
# js
# laravel
# phpstorm
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
Mac怎么查看崩溃日志_Mac控制台错误报告分析
Python字典中优雅地迭代剩余元素的方法
如何使用 Excel 发布器与 Power BI 分享 Excel 洞察
谷歌浏览器怎么给标签页静音_Chrome标签静音快捷操作
红果短剧网页版官网入口 官方最新网址发布
fishbowl官网免费版 fishbowl养鱼网站入口
Yandex搜索引擎官方地址 俄罗斯网络世界的主要入口
J*a中实现Go语言select通道多路复用机制
PrimeNG Sidebar背景色自定义指南:CSS覆盖与主题化实践
Golang如何优化CPU绑定任务分配策略_Golang CPU任务分配优化实践
J*aScript动态修改指定div内所有a标签样式指南
Go语言中高效处理x-www-form-urlencoded表单数据
解决Python单元测试中Mock异常方法调用计数为零的问题
PHP中SSG-WSG API的AES加密实践:正确使用初始化向量
AO3官方在线访问地址 Archive of Our Own最新镜像合集
谷歌推RCS信息存档功能:公司可监控员工私密信息!
京东京造J1和网易云音乐氧气真无线有什么不同_国产电商蓝牙耳机音质对比
AO3官方可用镜像 Archive of Our Own网页版最新入口
Mac怎么使用表情符号_Mac Emoji快捷键面板
深入理解Google Cloud Datastore查询:祖先路径与数据一致性
理解J*aScript Promise的微任务队列与执行顺序
Odoo 16:在表单视图中基于当前记录动态修改Tree视图属性
夸克浏览器网页版最新地址 夸克浏览器官方入口合集
《刺客信条4:黑旗》重制版新细节曝光:无缝加载 地图更细致!
age动漫网站入口 age动漫官网直接访问入口
谷歌浏览器最新官方入口链接 谷歌浏览器网页版官网导航
J*a递归快速排序中静态变量导致数据累积问题的解决方案
圆通快递查询实时追踪 圆通物流包裹状态快速查看
cad怎么合并重叠的线段_cad清理重复重叠线条的操作方法
Selenium Python中处理点击后新窗口加载冻结问题的策略与实践
如何在Promise链中优雅地中断后续then执行
抖音网页版企业服务中心登录入口_抖音网页版企业登录平台
iCloud登录入口网页版 苹果iCloud官网登录
Golang如何优雅处理error_Golang error处理最佳实践总结
Golang如何安装Swagger工具_GoSwagger文档生成环境
解决 MongoDB 聚合查询中对象数组 _id 匹配问题
如何创建独立于主系统的J*a运行环境_隔离式环境搭建策略
html5 app怎么运行环境_配html5 app运行环境【教程】
痛风发作了怎么办? 快速止痛和后期饮食调理
CSS自定义字体样式被系统字体替换怎么办_font-face方式指定font-display控制渲染策略
win11如何卸载Windows更新补丁 Win11解决更新导致系统不稳定的问题【修复】
sublime怎么覆盖插件的默认快捷键_sublime快捷键优先级与设置
PySpark中高效提取字符串右侧可变长度数字:使用regexp_extract
微博网页版直接访问 微博网页版账号管理快速入口
高德地图家和公司地址在哪设置 高德地图通勤路线设置方法【超详细】
FullCalendar 自定义按钮样式定制指南
C++ map遍历方法大全_C++ map迭代器使用总结
创客贴用户入口官网登录 创客贴网页版电脑版系统
夸克浏览器桌面版同步不了书签怎么处理 夸克浏览器跨设备同步异常解决方案
如何高效处理PHP中的Excel数据导入导出?PortPHP/Spreadsheet助你轻松搞定!


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