php - Composer 找不到私有(private)托管的包

标签 php git composer-php bitbucket

因此,composer search 有效并返回包及其描述。此外,它会提示我进行身份验证以获取该信息。问题是当我运行 composer info tradedefender/xignite-options-reader 时,它给我一个 Package not found 错误。尝试安装软件包时遇到同样的问题。这是我的应用程序的 composer.json:

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "repositories": [
      {
        "type": "vcs",
        "url": "https://jrgilman@bitbucket.org/tradedefender/xignite-options-reader.git"
      }
    ],
    "require": {
        "php": ">=5.5.9",
        "laravel/framework": "5.2.*"
    },
    "require-dev": {
        "fzaninotto/faker": "~1.4",
        "mockery/mockery": "0.9.*",
        "phpunit/phpunit": "~4.0",
        "symfony/css-selector": "2.8.*|3.0.*",
        "symfony/dom-crawler": "2.8.*|3.0.*"
    },
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "classmap": [
            "tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-root-package-install": [
            "php -r \"copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ],
        "post-install-cmd": [
            "Illuminate\\Foundation\\ComposerScripts::postInstall",
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "Illuminate\\Foundation\\ComposerScripts::postUpdate",
            "php artisan optimize"
        ]
    },
    "config": {
        "preferred-install": "dist"
    }
}

这是我的包的 composer.json:

{
    "name": "tradedefender/xignite-options-reader",
    "version": "master",
    "description": "Reads options data from Xignite using PHP/Python",
    "license": "proprietary",
    "authors": [
        {
            "name": "Jacob Ray Gilman",
            "email": "jacob.r.gilman@gmail.com"
        }
    ],
    "minimum-stability": "dev",
    "require": {},
    "autoload": {
      "psr-4": {
        "TradeDefender\\XigniteOptionsReader\\": "/src/php"
      }
    }
}

这是来自 CLI 的问题:

jacob@jacob-MS-7693:~/Documents/test-env$ composer search tradedefender
    Authentication required (bitbucket.org):
      Username: XXXXXXXX@XXXXXXXX
      Password: 
Do you want to store credentials for bitbucket.org in /home/jacob/.composer/auth.json ? [Yn] n
tradedefender/xignite-options-reader Reads options data from Xignite using PHP/Python
jacob@jacob-MS-7693:~/Documents/test-env$ composer info tradedefender/xignite-options-reader


  [InvalidArgumentException]                              
  Package tradedefender/xignite-options-reader not found

最佳答案

我的 Composer 版本包含来自 composer info --help 的以下输出:

-i, --installed
    List installed packages only (enabled by default, only present for BC).

看起来 composer info 默认只查看已安装的包。添加 --all 标志(显示已安装和可用的包)或 -a/--available 标志(仅显示可用的包) 应该使这项工作:

composer info --all tradedefender/xignite-options-reader

这与存储库是私有(private)的无关。

关于php - Composer 找不到私有(private)托管的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38723705/

相关文章:

git - 如何在 git-gui 中设置所需的语言?

git - git rebase 和 git merge --ff-only 之间有区别吗

automation - 如何强制 Composer 自动忽略警告?

php - 在 composer 依赖项中使用包 fork

php - 如何摆脱 MySQL 错误 'Prepared statement needs to be re-prepared'

php - PHP中的GOTO是邪恶的吗?

javascript - 想使用ajax获取条件数据

php - 如何首先回显下拉列表中先前选择的选项?

git - 为什么 git add -A 没有添加这些文件?

Composer 安装的 PHP 包 - 它们应该在源代码管理中吗?