Composer找不到令人满意的包版本

时间:2015-02-09 17:49:56

标签: git composer-php bitbucket toran-proxy

我使用Toran作为包装代理和我的主要私人存储库列表。我添加了一个托管在bitbucket上的私有组件。以下是组件composer.json

{
    "name": "naroga/metronic-bundle",
    "authors": [
        {
            "name": "Pedro Cordeiro",
            "email": "<my email>"
        }
    ],
    "require": {},
    "autoload": {
        "psr-0" : {
            "Naroga\\MetronicBundle" : "src"
        }
    }
}

我没有在此naroga/metronic-bundle组件中标记单个提交,因为它仍处于开发阶段的早期阶段。然后我在另一个项目中使用以下composer.json来要求它:

{
    "repositories": [
        {"type": "composer", "url": "http://<my toran host>/repo/private/"},
        {"type": "composer", "url": "http://<my toran host>/repo/packagist/"},
        {"packagist": false}
    ],
    "name": "naroga/sample-project",
    "type": "project",
    "autoload": {
        "psr-0": { "": "src/", "SymfonyStandard": "app/" }
    },
    "require": {
        ...
        "naroga/metronic-bundle": "dev-master"
    },
}

我不想降低最低稳定性,因为我需要许多其他应保持稳定的组件。

当我在项目中运行简单composer update -vvv时,作曲家会正确下载我的项目composer.json,如下所示:

Downloading http://<my toran host>/repo/packagist/p/naroga/metronic-bundle.json

但是,最后,它总是抛出这个错误:

Problem 1
 - The requested package naroga/metronic-bundle could not be found in any version, there may be a typo in the package name.

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

我不想添加任何标签,也不想降低项目的minimum-stability。如何继续安装此软件包?


composer show naroga/metronic-bundle -vvv显示以下输出:

C:\Apache24\htdocs\naroga>composer show naroga/metronic-bundle -vvv
Reading ./composer.json
Loading config file C:/Users/pedro.cordeiro/AppData/Roaming/Composer/auth.json
Loading config file ./composer.json
Executing command (CWD): git describe --exact-match --tags
Executing command (CWD): git branch --no-color --no-abbrev -v
Executing command (CWD): git rev-list master..outer-blog-view
Failed to initialize global composer: Composer could not find the config file: C:/Users/pedro.cordeiro/AppData/Roaming/Composer/composer.json
To initialize a project, please create a composer.json file as described in the http://getcomposer.org/ "Getting Started" section
Downloading http://<my toran host>/repo/private/packages.json
Writing C:/Users/pedro.cordeiro/AppData/Local/Composer/repo/http---<my toran host>-repo-private/packages.json into cache
Downloading http://<my toran host>/repo/packagist/packages.json
Writing C:/Users/pedro.cordeiro/AppData/Local/Composer/repo/http---<my toran host>-repo-packagist/packages.json into cache
Downloading http://<my toran host>/repo/private/p/naroga/metronic-bundle.json
Writing C:/Users/pedro.cordeiro/AppData/Local/Composer/repo/http---<my toran host>-repo-private/provider-naroga$metronic-bundle.json into cache
Downloading http://<my toran host>/repo/packagist/p/naroga/metronic-bundle.json
Downloading http://<my toran host>/repo/packagist/p/naroga/metronic-bundle.json
name     : naroga/metronic-bundle
descrip. :
keywords :
versions : dev-master
type     : library
license  :
source   : [git] https://naroga@bitbucket.org/naroga/metronic-bundle.git c8cc1d66cae1e24b7f4039b690c999a083dd5775
dist     : [zip] http://<my toran host>/repo/private/dists/naroga/metronic-bundle/9999999-dev/c8cc1d66cae1e24b7f4039b690c999a083dd5775.zip c8cc1d66cae1e24b7f4039b690c999a083dd5775
names    : naroga/metronic-bundle

autoload
psr-0
Naroga\MetronicBundle => src

2 个答案:

答案 0 :(得分:2)

首先,您可以使用以下方法确定包装是否可见:

composer show naroga/sample-project

如果它没有列出任何内容,那么这意味着它在您的Toran仓库中根本不存在,这可能表示您在那里配置错误或者忘记将其添加到Toran。

以下这一行本身并没有多大意义,它只是意味着作曲家正在寻找toran repo中的那个包,但它不能保证它存在:Downloading http://<my toran host>/repo/packagist/p/naroga/metronic-bundle.json

答案 1 :(得分:0)

事实证明,toran-proxy不会以懒惰的方式处理私有存储库,就像它对packagist存储库一样。

因此,在添加新的私有存储库后,运行php bin/cronphp app/console toran:cron是必须的。

我重新同步了运行这个简单命令的存储库,现在我的包可见了。