composer packages.json自动加载定义

时间:2018-03-11 10:29:38

标签: php composer-php repository autoload

我在私有项目中使用composer库来管理常用逻辑,而我以前总是使用“vcs”存储库定义安装它们,如下所示:

"require": {
    "private/package": "dev-develop",
},
"repositories": {
    {
        "type": "vcs",
        "url": "http://localhost/git/private-package.git"
    }
}

...曾经像魅力一样工作,但对于我会同时使用多个库的项目来说很繁琐。 所以我决定编写自己的“作曲家”类型的存储库,它动态地生成一个“packages.json”,其中所有的库看起来都是这样的:

"packages" {
    "private/package": {
        "dev-develop": {
            "name": "private/package",
            "version": "dev-develop",
            "source": {
                "type": "git",
                "url": "http://localhost/git/private-package.git",
                "reference": "origin/develop"
            }
        }
    }
}

安装工作正常,但它不再正确生成自动加载器。安装不再读取实际vcs存储库的“composer.json”文件。

如果我在“packages.json”文件中包含自动加载器定义,则自动加载器只能正常工作。

我希望composer使用“packages.json”定义,但仍然从实际包中读取自动加载器定义。我的问题是,如果可能的话。

如果自动加载器定义随库的更新版本而更改,则“packages.json”中的定义将不再适用于旧版本,因此我认为应该有另一种方法来解决此问题。

0 个答案:

没有答案