首页 文章

Composer不安装依赖项的依赖项

提问于
浏览
0

我已经使用satisf作出了作曲家包(作为zip文件)和一个存储库 . 这是满意的存储库定义:

{
"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" } }
    }
}

composer.json for core-bundle:

{
"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"
    }
}
}

我可以通过将核心包添加到应用程序的composer.json的"require"键来安装它 . 我还将"minimum-stability"设置为"dev"那时我使用 composer --dev --prefer-dist --with-dependencies vendor/core-bundle 安装了core-bundle,但它没有安装"vendor/security-bundle"或任何"core-bundle"的依赖项 . 问题是什么?我也尝试使用 composer install :同样的结果

1 回答

  • 0

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

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

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

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

相关问题