繁体   English   中英

我如何在没有依赖的情况下在composer中安装软件包

[英]how can I install package in composer without dependency

我正在使用带有symfony php composer

有一个bundle A依赖于另一个bundle B v 1.1

但是,我拥有bundle B v 2的最新版本。

现在,我想安装bundle A而不安装其依赖bundle B v 1.1

我该如何进行? 请提出建议。

设定:

最新的瓢虫捆绑版是1.0.2但是与此同时,还进行了一些提交。 它要求瓢虫版本为1.0.8 ,其中也不包括最新更改。

解:

一个简单的解决方案是使用inline-alias 就像是:

"require" : {
    "raulfraile/ladybug-bundle": "dev-master as 1.0.3"
    "raulfraile/ladybug": "dev-master as 1.0.9"
}

替代方案:

您可以在composer.json中定义一个具有相同名称的包,其中包括更改后的依赖项。

只需从原始包中复制包定义,添加dist / source位置并编辑需求即可。

然后,作曲家将使用这个新的程序包定义,因为它从所有已知存储库中选择第一个匹配项(总是查询包专家)。

您应该为dist-zip选择一个特定的提交。 一个例子:

"repositories": [
    {
        "type": "package",
        "package": {
            "name": "raulfraile/ladybug-bundle",
            "version": "1.0.3",
            "require": {
               "raulfraile/ladybug" : "~1.0@dev"
            },
            "dist": {
                "url": "https://github.com/raulfraile/LadybugBundle/archive/5c3739a881313f63f7b47ace49af5deeed211362.zip",
                "type": "zip"
            },
        }
    }
],

现在需要"raulfraile/ladybug-bundle": "~1.0"在你composer.json,它会使用1.0.3你自己定义的版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM