如何使用Composer在Drupal 8中安装不在包装上的第三方库?

Chr*_*ris 2 git drupal drupal-8 composer-php

在Drupal 8中安装不在packagist上的第三方库的最佳方法是什么?

例如,我有Color Field模块,它可以使用jQuery Simple Color Picker库来提供更好的用户体验.

最明显的解决方案是手动添加库,但这不是真正可维护的.

我的第二个想法是将git存储库添加到我的composer.json中,如下所示,但它不起作用,因为目标存储库没有composer.json文件.

"repositories": [
    {
        "name": "jquery-simple-color",
        "type": "git",
        "url": "https://github.com/recurser/jquery-simple-color.git"
    }
],
"require": {
    "jquery-simple-color/": "1.2.1"
}
Run Code Online (Sandbox Code Playgroud)

我应该只是分叉git存储库并在那里添加composer.json文件吗?

小智 8

你是在正确的轨道上,在你的composer.json中,你可以制作自己的"包",例如:

"repositories": [
  {
    "type": "package",
    "package": {
      "name": "jquery/simplecolor",
      "version": "1.2.1",
      "dist": {
        "url": "https://github.com/recurser/jquery-simple-color/archive/v1.2.1.zip",
        "type": "zip"
      },
      "type": "drupal-library"
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

然后把它包括在内

  "jquery/simplecolor": "1.2.1,
Run Code Online (Sandbox Code Playgroud)