以下情况:
- 库 X(由我维护)依赖于库 Y 版本 ^2.0。
- 对于库 Y,存在较新的主要版本 3,该版本通常更好。
- 将基于 Y 2 构建的代码升级到 Y 3 非常简单,但仍然需要对现有代码进行一些调整。
- Y 是 X 的依赖项,因此升级它会迫使 X 的用户也升级,因此还需要更新在 X 之外使用 Y 的代码。
我想让 X 可与 Y 2 和 Y 3 一起安装。我的方法是使用 Y 提供不同版本的代码,并根据安装的版本在版本之间切换,类似于 C 条件编译。
问题:
- 有更好的方法吗?
- 我将如何实现这样的条件代码?
- 还有其他意见或建议吗?
如果 X 使用 Composer,那么您可以使用 Composer 的运行时 API 找到已安装软件包的版本:https://getcomposer.org/doc/07-runtime.md#installed-versions https://getcomposer.org/doc/07-runtime.md#installed-versions
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)