Composer在Yii2composer.json中找不到新需求的包



好的,我正在使用Yii2,并试图向项目添加一个新的需求/库。上述图书馆可在此处找到:https://github.com/cyphix333/SBBCodeParser

它是一个添加了composer.json的分叉项目。

我试着把它作为一个需求添加到项目的主作曲家文件中,即:

"require": {
    //..........
    "samclarke/sbb-code-parser": "*"
},

然后我跑了:

composer update

它只是抱怨找不到包裹或任何版本。

然后我删除了那条线并尝试:

require samclarke/sbb-code-parser

我的Yii vendor文件夹中已经有了这些文件,位于:@app/vendor/samclarke/sbb-code-parser

我对composer还很陌生,不确定我做错了什么,也不确定composer应该如何根据包名称知道从哪里获取文件。

samclarke/sbb-code-parser可以在Packagist中找到。https://packagist.org/packages/samclarke/sbb-code-parser

默认情况下,Composer会尝试解析一组stable包。但是这个软件包并没有提供一个稳定的版本(版本标签),只存在dev-master版本。Composer无法解决此问题。为了要求它,您需要降低这个包开发的最低稳定性。

你可以明确地为一个包这样做:

"require": {
    "samclarke/sbb-code-parser": "dev-master@dev"
},

或通过设置针对所有包裹:

"minimum-stability": "dev"

程序包cyphix333/SBBCodeParser不在Packagist上。这是一个私有分叉。如果你想要这个代码的话。您可以在composer.json中添加一个repositories部分,并添加带有url的repo和带有vcs的type。然后Composer可以通过Github从VCS存储库加载包。此处对此进行了描述:https://getcomposer.org/doc/05-repositories.md#loading-a-package-from-a-vcs-repository

工作原理如下:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/cyphix333/SBBCodeParser"
        }
    ],
    "require": {
        "samclarke/sbb-code-parser": "dev-master"
    }
}

但不幸的是,fork也没有得到很好的维护,并且不包含有效的composer.json文件。

 [ComposerRepositoryInvalidRepositoryException]
 No valid composer.json was found in any branch or tag of https://github.com/cyphix333/SBBCodeParser, could not load a package from it.

这需要首先解决。。。。

相关内容

  • 没有找到相关文章