drupal - 如何在 drupal 8 自定义模块中编写自动加载

标签 drupal composer-php drupal-modules drupal-8

如何自动加载“非 drupal”类,如 Carbon当需要通过模块自己的 composer.json 而不改变 drupals 核心 composer.json(比如使用 composer-merge-plugin)时? 我必须在哪里包含 composers autoload.php 才能在 MyModuleController 中使用第三方库?

我的模块结构(简化)

src/
  MyModuleController.php
vendor/
  autoload.php
  ...
composer.json
composer.lock
my_module.info.yml
my_module.module

最佳答案

您必须在根目录中的 composer.json 的存储库部分包含自定义模块的路径

"repositories": [
    {
        "type": "composer",
        "url": "https://packages.drupal.org/8"
    },
    {
        "type": "path",
        "url": "docroot/modules/custom/example"
    }
]

https://www.drupal.org/docs/develop/using-composer/managing-dependencies-for-a-custom-project

关于drupal - 如何在 drupal 8 自定义模块中编写自动加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52182280/

相关文章:

drupal - 如何覆盖另一个模块中存在的函数

php - 如何正确删除drupal不用的核心模块?

php - 如何使用 PSR-4 自动加载 Composer 制作扩展类

View 上方的 Drupal 上下文 block ?

php - Composer 不会通过存储库> 类型> 路径自动加载文件

php - fatal error : Class 'Illuminate\Database\Capsule\Manager' not found

javascript - 如何在 Drupal 6 中将 javascript 添加到登录和注销页面

Drupal 模块以表格格式显示数据

php - 如何在 PHP 和 Azure 中调试curl

javascript - Drupal Theming js 错误 - 无法读取未定义的属性 'top'