Node package.json依赖项

时间:2014-01-28 19:30:04

标签: node.js

Nodejs的新手,并查看package.json文件的dependencies部分。有人可以向我解释设置版本时~*符号的作用吗?

1 个答案:

答案 0 :(得分:6)

来自the documentation

支持以下范围样式:

  • 1.2.3特定版本。什么都没做。请注意,仍然会忽略构建元数据,因此1.2.3+build2012将满足此范围。
  • >1.2.3大于特定版本。
  • <1.2.3少于特定版本。如果版本范围上没有预发布标记,则也不允许使用预发布版本,即使这些版本在技术上&#34;小于&#34;。
  • >=1.2.3大于或等于。请注意,预发行版本不等于他们的&#34;正常&#34;等价物,因此1.2.3-beta不会满足此范围,但2.3.0-beta会。
  • <=1.2.3小于或等于。在这种情况下,允许使用预发布版本,因此1.2.3-beta将满足。
  • 1.2.3 - 2.3.4:= >=1.2.3 <=2.3.4
  • ~1.2.3:= >=1.2.3-0 <1.3.0-0&#34;合理地接近1.2.3&#34;。使用代字号运算符时,也支持预发布版本,但是下一个有效数字的预发布将不会令人满意,因此1.3.0-beta将不满足~1.2.3
  • ~1.2:= >=1.2.0-0 <1.3.0-0&#34;任何以1.2&#34开头的版本;
  • 1.2.x:= >=1.2.0-0 <1.3.0-0&#34;任何以1.2&#34开头的版本;
  • ~1:= >=1.0.0-0 <2.0.0-0&#34;任何以1&#34开头的版本;
  • 1.x:= >=1.0.0-0 <2.0.0-0&#34;任何以1&#34开头的版本; 范围可以与空格(暗示&#34;和&#34;)或||(暗示&#34;或&#34;)结合。

附录:

*表示任何版本。