Laravel 10:如何合并包composer.json文件

问题描述 投票:0回答:1

我创建了自己的包,位于名为

/ECommerce
的根文件夹中。 该目录包含
composer.json
和我的包代码。

当我想向

ECommerce/composer.json
添加一个新包(这是该包正常工作所必需的)时,在调用
$ composer update/install
命令后,该包未安装。

如果我将所需的包添加到根目录

composer.json
,它就会安装。 是否有可能合并这两个composer.json文件,或者我是否必须将
composer.json
从根文件夹复制到项目末尾的包文件夹

示例:

Structure: /
       - app
       - Ecommerce
         - ...
         - composer.json
       - resources
       - vendor
       - composer.json
       - ....

我在电子商务中添加了

composer require nwidart/laravel-modules
,但未安装 如果我在根composer.json中添加它已安装

json laravel composer-php
1个回答
0
投票

简单地说,除了来自托管依赖项的文件之外,composer 不支持多个、嵌套或其他

composer.json
文件。

每个项目都有一个

composer.json
,声明该项目的依赖项。

然后每个项目都有自己的

composer.json
文件来声明 他们的依赖关系,并且在执行
update
install
require
等时整个事情就解决了

当该项目具有更多 Composer 依赖项时,将包手动安装在单独的目录中是一个坏主意。如果该包实际上是一个 Composer 包并声明了自己的依赖项,则将其安装为项目包 (

require your/package
),并让 Composer 在适当的时候处理依赖项。如果您在
your/package
中添加/更改/删除依赖项,则您
composer update
根项目,然后让 Composer 安装/更改所需的任何其他内容。

© www.soinside.com 2019 - 2024. All rights reserved.