NPM不识别以'* -rc'结尾的semvers(即释放候选); 导致依赖关系无法解决。 通常的解决方法是什么?

这是一个非常简单的例子来说明这个问题。

我正在尝试使用react-native@0.8-rcreact-native-linear-gradient

react-native-linear-gradientreact-native@>=0.4.4定义为对等关系。 很公平。

我运行npm install

我得到一个错误说

react-native@0.8-rc不满足react-native@>=0.4.4

这个问题使得npm无用,因为它妨碍了开发人员和软件包维护者。 看这里的例子 。

任何使用节点的人如何对候选版本做有用的工作?!? 什么是解决方法?


作为参考,来自NPM 3.1.2(编写本文时的最新版本)的错误如下所示:

 MyProject@0.0.1 /path/to/MyProject ├─┬ react-native@0.8.0-rc │ └── stacktrace-parser@0.1.1 (git://github.com/frantic/stacktrace-parser.git#493c5e5638a79b4d5886171867a06275cc703b00) └─┬ react-native-linear-gradient@0.3.2 └── UNMET PEER DEPENDENCY react-native@>= 0.4.4 npm WARN EPEERINVALID react-native-linear-gradient@0.3.2 requires a peer of react-native@>= 0.4.4 but none was installed. 

好的,所以我看了这个,据我所知这是一个与semver版本的semver

短期:我会build议分叉semver库,修复你的fork中的bug,然后在package.json为你的项目引用你的semver分支。

长期:提交一个包含您的特定问题的错误报告,或者自己提交一个代码修复,并请求成为贡献者。

在github发布的NPM点:

 npm install --save https://github.com/facebook/react-native/archive/v0.8.0-rc.tar.gz 

编辑:对不起,没关系,我误解,并认为你有安装问题。 除了修改peerDependency之外,我没有看到任何解决方法