跳转到主要内容
首页

用户帐户菜单

  • 登录

主导航

  • 首页
  • 小公司运营
  • 网站建设
  • 创业杂谈
  • 兼职赚钱
  • 小微企业信息化
  • 手册教程
    • 《大伟哥的Drupal 8建站指南》
    • 《通过JohnChow.Com在网上赚钱》
  • 关于

面包屑

  • 首页
  • 理解 Composer 的 minimal-stability 属性

理解 Composer 的 minimal-stability 属性

By 大伟哥 | 2021-09-12,周日, 23:00

安装Drupal Commerce 的时候碰到了如下问题:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires drupal/commerce ^2.26 -> satisfiable by drupal/commerce[2.26.0].
    - drupal/commerce 2.26.0 requires drupal/inline_entity_form ^1.0-rc6 -> found drupal/inline_entity_form[dev-1.x, 1.0.0-rc6, ..., 1.x-dev (alias of dev-1.x)] but it does not match your minimum-stability.
Installation failed, reverting ./composer.json and ./composer.lock to their original content.

minimum-stability 规定了默认状态下获取包的稳定性,默认状态下是stable,也是就正式稳定版,稳定性由高到低分别是 stable, RC, beta, alpha, dev.

drupal/commerce 依赖 drupal/inline_entity_form 包的1.0-rc6以上版本,但目前该模块最新版本是1.0-rc9, 还不是稳定版,因此不符合稳定性要求。

那怎么办呢?

一个简单粗暴的方式就是在composer.json文件里直接把 minimum-stability 修改成接受RC版本的状态:

"minimum-stability": "RC",

但是这样一来,整个项目能够接受的所有依赖包都由 stable 版本变成了RC版了,这显然降低了整个网站的稳定性和可靠性,因此大伟哥不推荐这种全局性的修改。

一个更稳妥的办法,就是在 require 里面使用稳定性标识,只给特定的包放宽稳定性要求,允许它使用指定的版本:

"require" : {
    "drupal/inline_entity_form": "@RC"
}

这样就不会对其他包的稳定性产生任何影响了。

  • 1155 阅读
Composer

添加新评论

此字段内容将保密,不会被其他人看见。
关于文本格式
  • 不允许使用HTML标签。
CAPTCHA
15 + 0 =
计算出这道简单的算术题并键入答案。例如、1+3,就输入 4。
发布评论前,请通过下面的验证,以免被当作垃圾评论机器人屏蔽。

搜索

沪ICP备17000093号-1

公安备案沪公网安备 31011402008254号

© 2016-2022 大伟哥博客版权所有