【发布时间】:2018-12-13 15:34:16
【问题描述】:
我有一本包含 20.x.x 版本的依赖项的食谱。
当我运行 berks install 时,我得到一个解析错误,如下所示:
Unable to satisfy the following requirements:
- `org_java (>= 0.0.0)` required by `org_dept_proj_xyz-20.0.2`
- `org_java (>= 0.0.0)` required by `org_dept_proj_pews-20.0.0`
- `org_java (>= 0.0.0)` required by `org_dept_proj_deployment_manager-20.0.0`
- `org_java (>= 0.0.0)` required by `org_dept_proj_swagger-20.0.0`
- `org_java (>= 0.0.0)` required by `org_dept_proj_rbd_webservice-20.0.0`
- `org_java (>= 0.0.0)` required by `org_jks-1.0.4`
- `org_java (>= 0.0.0)` required by `org_dept_proj_ppp-8.3.8`
- `org_java (>= 0.0.0)` required by `org_db2-0.9.0`
- `org_java (>= 0.0.0)` required by `org_dept_proj_consumer_controls-20.0.0`
- `org_java (>= 0.0.0)` required by `org_dept_proj_my_repo_webservice-2.2.8`
- `org_java (>= 2.3.3)` required by `org_jboss_eap_6-8.26.1`
- `org_java (>= 2.0.0)` required by `org_tomcat85-3.3.6`
- `org_java (>= 0.0.0)` required by `org_flyway-4.2.1`
- `org_java (~> 1.4)` required by `org_dept_proj_scope_base-0.15.6`
Unable to find a solution for demands: org_dept_proj_xyz (20.0.2), org_dept_proj_xyz_test (0.0.1)
上面所有版本 20.x.x 的食谱都存在,但 org_dept_proj_scope_base 20.x.x 也 存在,并且出于某种原因,Berkshelf 正在解析为 0.15.6。这导致 berks 失败,因为 org_java 的版本与其他 org_java 要求不兼容, 但是 org_dept_proj_scope_base 的 20.x.x 版本依赖于 org_java 的兼容版本。
我不知道为什么 Berkshelf 会解析到那个版本。
Berksfile 中的求解器行是:
solver :ruby, :required
【问题讨论】:
标签: chef-infra berkshelf