首页 文章

Laravel的新用户 - 供应商目录

提问于
浏览
5

我按照Laravel安装指南中的所有步骤进行操作 .

使用Composer,项目在服务器上成功安装并像魅力一样运行 .

在安装时,Composer会在供应商目录中添加一些依赖项 .

我的问题是:为什么“Hello World项目”有很多依赖项 . 我不明白目录的需求 . 继承人名单:

  • bin

  • classpreloader

  • 作曲家

  • d11wtq

  • filp

  • ircmaxell

  • jeremeamia

  • laravel

  • monolog

  • nesbot

  • nikic

  • paragonie

  • 拼凑而成

  • phpseclib

  • predis

  • psr

  • 堆栈

  • swiftmailer

  • 交响乐

我来自Zend开发 . 所以在供应商目录中,我只期待Laravel框架,没有别的 . 为什么我需要超过4200个第三方脚本文件 .

谢谢回答 .

卡尔

1 回答

  • 2

    Laravel具有许多开箱即用的功能,在其他框架中缺少这些功能 . 我可以理解你认为对于像Hello World项目那样简单的东西有太多的依赖关系,因为你是完全正确的 . 但Laravel不是在你需要时添加功能,而是在于已经拥有所有功能 . 这就像比较Arch Linux和Ubuntu . 在Arch中,您可以根据需要随时随地安装 . Ubuntu拥有一切开箱即用的功能 .

    哪个更好是主要是品味问题 .

    我在一个新的Laravel项目中运行 composer show --tree 来查看依赖树 . 现在,从Laravel 5.4.18开始,有4个主要依赖项引入所有其他依赖项 .

    • laravel / framework

    • laravel / tinker

    • fzaninotto / faker

    • phpunit / phpunit

    许多这些依赖项在部署时未使用,例如phpunit仅用于单元测试,或者使用Symfony调试条 - 嗯,你猜对了 - 用于调试 .

    关于你关于删除依赖关系的评论:它们是由4个主要依赖项之一引入的,因此你必须分叉它们并删除未使用的组件或使用它 .

相关问题