【问题标题】:Composer not installing dependencies of dependenciesComposer 未安装依赖项的依赖项
【发布时间】:2015-01-24 10:59:56
【问题描述】:

我制作了 composer 包(作为 zip 文件)和一个使用 satis 的存储库。 这是满足的存储库定义:

{
"name": "vendor_initial_repo",
"repositories": [
    {   
        "type": "package", 
        "package": { "name": "vendor/core-bundle", "version": "dev-master", "dist": { "url": "http://vendor.com/bundles/vendor_core_bundle.zip", "type": "zip" } }
    },
    {   
        "type": "package", 
        "package": { "name": "vendor/security-bundle", "version": "dev-master", "dist":     { "url": "http://vendor.com/bundles/vendor_security_bundle.zip", "type": "zip" } }
    }
}

core-bundle 的composer.json:

{
"name": "vendor/core-bundle",
"description": "Bundle containing all other vendor Bundles and more",
"keywords": ["Symfony"],
"type": "symfony-bundle",
"minimum-stability": "dev",
"prefer-stable": true,
"require": {
    "php": ">=5.3.2",
    "symfony/symfony": ">=2.3.0",
    "vendor/security-bundle": "dev-master",
    "braincrafted/bootstrap-bundle": "2.1.*@dev",
    "bower-asset/jquery": "1.11.*",
    "bower-asset/jquery-ui": "1.11.*"
},
"autoload": {
    "psr-4": { "Tezlabs\\CoreBundle\\": "" }
},
"extra": {
    "branch-alias": {
        "dev-master": "1.0-dev"
    },
    "asset-installer-paths": {
        "npm-asset-library": "web/resources/vendor",
        "bower-asset-library": "web/resources/vendor"
    }
}
}

我可以通过将 core-bundle 添加到应用程序 composer.json 的“require”键来安装它。我还在那里将“最低稳定性”设置为“dev”。然后我使用composer --dev --prefer-dist --with-dependencies vendor/core-bundle 安装了 core-bundle,但它没有安装“vendor/security-bundle”或任何“core-bundle”的依赖项。问题是什么? 我也尝试过使用composer install:同样的结果

【问题讨论】:

  • 看起来问题在于将文件打包为 zip。当我使用 vcs 包时它可以工作。但是在 satis 为 zip 包生成的“包含”文件中没有像“require”这样的键.

标签: symfony composer-php


【解决方案1】:

如果您使用“包”类型,则必须在其中提供 Composer 操作所需的所有信息。

该“包”类型旨在替代不提供“composer.json”文件的软件,在这种情况下您无法自己解决这个问题(例如,其他人在某处放弃了它)。

Composer 最好与存储库一起用作软件的来源。这样,该存储库中的“composer.json”文件将被评估,以及该存储库中存在的分支名称和标签。这是使用 Composer 取得成功的最简单方法。

如果您想从这些版本创建 ZIP 包,您可以配置 Satis 来执行此操作,您不必自己动手 - 请参阅 "archive" option for Satis

【讨论】:

    猜你喜欢
    • 2017-03-06
    • 2017-06-28
    • 2018-02-02
    • 2017-09-18
    • 2018-09-11
    • 2013-11-04
    • 1970-01-01
    • 2016-08-21
    • 2017-10-31
    相关资源
    最近更新 更多