我遵循了Laravel安装指南中的所有步骤。
使用 Composer,项目在服务器上成功安装并像魅力一样运行。
在安装过程中,Composer 在供应商目录中添加了一些依赖项。
我的问题是:"Hello World项目"为什么有这么多依赖项。 我不了解目录的需求。以下是列表:
- .bin
- 类预加载器
- 作曲家
- d11wtq
- 菲尔普
- 伊尔克麦克塞尔
- 杰里米亚 拉
- 拉维尔
- 独白
- 内斯博特
- 尼基奇
- 帕拉戈尼
- 拼凑
- phpseclib
- 普雷迪斯
- PSR
- 叠
- 斯威夫特邮件
- 交响曲
我来自Zend开发。所以在供应商目录中,我只期待框架 Laravel,没有别的。为什么我需要超过 4200 个第三方脚本文件。
感谢您的回答。
卡尔
> Laravel具有许多开箱即用的功能,这些功能在其他框架中是缺少的。我可以理解您认为对于像 Hello World 项目这样简单的东西有太多的依赖关系,因为您完全正确。但是Laravel并不是要在需要时添加功能,而是要拥有所有功能。这就像比较 Arch Linux 和 Ubuntu。在 Arch 中,您可以在需要时随时随地安装东西。Ubuntu拥有开箱即用的一切。
哪一个更好主要是品味问题。
我在一个新的Laravel项目中运行了composer show --tree
以查看依赖树。现在,从 Laravel 5.4.18 开始,有 4 个主要依赖项可以拉入所有其他依赖项。
- 拉拉维尔/框架
- 拉拉维尔/修补匠
- fzaninotto/faker
- PHPUNIT/PHPunit
其中许多依赖项在部署时没有使用,例如phpunit仅用于单元测试或使用Symfony调试栏 - 好吧,你猜对了 - 用于调试。
关于您对删除依赖项的评论:它们是由 4 个主要依赖项之一拉入的,因此您必须分叉它们并删除未使用的组件或使用它。