Local Shopware Plugin composer.json 依赖项是如何管理的?

How are Local Shopware Plugin composer.json Dependencies Managed?

在 Shopware 系统中,有一个主 composer.json 文件。这管理主要项目依赖项。除此之外,Shopware plugins require you to add a composer.json file。如果这些插件是通过主 composer.json 文件添加到系统中的,那么插件的 composer.json 文件中的依赖项将最终位于根级别 vendor/ 文件夹中。这个我明白了。

但是,插件似乎也可以安装在 vendor 文件夹之外的本地

当一个插件安装在本地时,应该如何管理它的依赖关系?

是否打算在本地安装插件时将其依赖项添加到 main composer.json 文件中?或者有没有办法告诉shopware

Hey, install this plugin's dependencies

另外 -- ./custom/plugins/*/packages 文件夹如何进入这个?我模糊地理解这些是针对 private 插件依赖项,但我不确定这意味着什么或应该如何管理该代码

或者我误解了这些本地文件夹背后的意图,Shopware 6 中的期望是所有插件都应该通过您的主 composer.json 文件安装,而 custom/ 文件夹只是遗留的?

或者其他什么东西?

如果您的插件位于 custom/static-plugins 文件夹中,您可以直接从根目录中 composer require my/plugin。这就是在您的项目中使用作曲家插件的方法。 Shopware 然后在 custom/static-plugins/* repository.

中搜索作曲家插件

查看文档中的 Require project plugins 部分,了解如何处理要求的作曲家插件。

custom/plugins 文件夹中,您拥有所有商店插件。这也是为什么 custom/plugins 文件夹的内容 is not committed 到你的 git 仓库的原因。因为 custom/plugins 中的插件来自 Shopware 商店。但是:如果您愿意,您仍然可以将插件放在 custom/plugins 文件夹中。

关于custom/plugins/*/packages:你是对的。查看文档中的 adding private composer dependencies 部分。