Laravel Sail 的 bin 文件 vendor/bin/sail 与 vendor/laravel/sail/bin/sail 不一样,是如何实现的呢?

43 天前
 curiousjude

最近在研究 Laravel Sail ,使用 composer create-project 命令创建了一个 laravel 项目,然后发现 vendor/bin/sail 与 vendor/laravel/sail/bin/sail 不一样的(见截图),没搞明白这个不一样是怎么实现的。

按理说 laravel/sail 的 composer.json 文件里说明了 bin 文件的位置,composer install 的时候应该是把这个文件复制到 vendor/bin 里的,那为什么这两个文件的内容不一样呢?搜索代码没看到有处理的逻辑,也搜不到 vendor/bin/sail 文件里代码的内容。

各位大佬能否帮忙指个路,这个逻辑可能是在哪边处理的?多谢!

474 次点击
所在节点    问与答
3 条回复
Rache1
43 天前
Rache1
43 天前
目的应该是解决这个问题

[2.2.0] Scripts from "bin" are executed not in "bin" directory. · Issue #10389 · composer/composer · GitHub
https://github.com/composer/composer/issues/10389
curiousjude
43 天前
@Rache1 多谢指点思路!

看来是我不了解这个机制造成的错误理解。应该是 vendor/bin 里的是 composer 生成的 proxy 文件。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1027506

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX