我正在NodeJS中开发一个CLI工具,它使用我们开发的另一个NodeJS包,这是一个SDK.
问题是,我们刚刚发布了该SDK的V2版本,我们希望为CLI用户提供一个遗留模式,以便他们可以使用我们的SDK的第一个或第二个版本,如下所示:
$ cli do-stuff
#execute sdk v2
或
$ LEGACY_MODE='on' cli do-stuff
#execute sdk v1
我的问题是,我没有找到任何干净的方法在CLI中使用同一依赖项的两个版本.
现在,我的Package.json完全不包含我的sdk,但我希望有如下内容:
"dependencies": {
"my-sdk": "2.0.0"
"my-sdk-legacy": "1.0.0"
}
或
"dependencies": {
"my-sdk": ["2.0.0", "1.0.0"]
}
我还没找到别的东西.我正在考虑用另一个名字发布我的sdk包的第一个版本,比如"my sdk legacy",但如果可能的话,我希望避免这样做.
有什么解决办法吗?