【问题标题】:How to install different types of composer packages in different directories?如何在不同目录中安装不同类型的composer包?
【发布时间】:2016-04-03 23:04:17
【问题描述】:

我知道您可以使用更改供应商目录

    "config": {
        "vendor-dir": "customdir"
    }

但这会改变所有包的目录。如何更改自定义作曲家类型的目录?

【问题讨论】:

  • 为什么?你想用它来完成什么?
  • 我创建了一个自定义作曲家类型(用于我的插件),我想将其安装在“普通”作曲家包之外的另一个目录(/plugins)中
  • 为什么?包管理器正常工作有什么问题,如果你的包在不同的目录中,你会得到什么好处?如果你一无所获,为什么还要经历麻烦?
  • 因为我的系统会在 /plugins 文件夹中查找插件。不想将它与其他外部库混合,因为我需要查看所有的作曲家包并确定哪个是我的框架的插件。这会减慢框架的速度。
  • 您最好为插件使用命名空间。但请查看getcomposer.org/doc/faqs/… 了解{ "extra": { "installer-paths": { "plugins/{$vendor}/{$name}" : [ "vendor:*" ] } } } 的使用详情

标签: php composer-php


【解决方案1】:

您可以使用这个作曲家包:Composer Custom Type Installer。 任何自定义类型都可用于定义应安装该类型的路径。

从 github 获得了这个关于如何使用它的示例:

{
    "extra": {
        "custom-installer": {
            "web/": ["type:drupal-core"],
            "web/sites/{$name}/": ["type:drupal-site"],
            "custom/{$type}/{$vendor}/{$name}/": ["type:random-type"],
            "vendor/{$vendor}/{$name}/": ["type:library"],
            "web/sites/all/libraries/{$name}/": [
                "type:component",
                "ckeditor/ckeditor",
                "flesler/jquery.scrollto"
            ],
            "custom-folder-for-single-package": ["myvendorname/single-package"],
        }
    }
}

【讨论】:

  • 看起来很棒的包!一定会检查出来的:)
猜你喜欢
  • 1970-01-01
  • 2017-04-27
  • 1970-01-01
  • 1970-01-01
  • 2012-06-21
  • 2017-05-07
  • 1970-01-01
  • 1970-01-01
  • 2018-12-30
相关资源
最近更新 更多