当我在供应商文件夹 中尝试composer require something/something
时,它开始安装很多我没有要求的东西。作曲家安装不相关的库
就像我刚刚做的composer require ramsey/uuid
,Composer创建了一个名为vendor的子文件夹,然后开始下载很多库,例如Laravel,Symfony和Twig(这些只是我所知道的)。
这首先发生在我试图要求Twig的时候。我刚刚删除了无关的图书馆并保留了Twig。
有没有人有什么想法造成这种情况?
当我在供应商文件夹 中尝试composer require something/something
时,它开始安装很多我没有要求的东西。作曲家安装不相关的库
就像我刚刚做的composer require ramsey/uuid
,Composer创建了一个名为vendor的子文件夹,然后开始下载很多库,例如Laravel,Symfony和Twig(这些只是我所知道的)。
这首先发生在我试图要求Twig的时候。我刚刚删除了无关的图书馆并保留了Twig。
有没有人有什么想法造成这种情况?
如果作曲家下载和安装的东西,你没有问,那东西大概被要求通过下列之一:
作曲家提到composer.lock文件创建一个名为供应商作为家中的所有库/包,它取出并安装的文件夹中。
最好的方法是删除一切,从头开始,因为你还没有真正做了很多工作,但(正如你所说,你composer.json
文件是空的):
$ rm -rf vendor/
$ rm composer.json
$ rm composer.lock
然后,开始作曲和再次安装依赖项:
$ composer init
$ composer require ramsey/uuid
您现在应该已经可以正常工作了。
我的假设是,您正在运行composer install
基于较旧的composer.lock
文件,该文件将重新下载依赖关系。
您可以随时检查,为什么作曲家安装的东西,通过runnung
$ composer why webmozart/assert
该命令将显示,其中的根本要求,取决于封装(webmozart/assert
在这种情况下)。
什么在你的'composer.json'文件 – Steve
{ “要求”:{ “laravel/laravel”: “^ 5.3” }} 我甚至没有安装laravel –
删除了这一行,然后再试一次。你是如何生成文件的第一个地方 – Steve