使用 npm package.json 文件获取最新版本并正确命名插件

Posted

技术标签:

【中文标题】使用 npm package.json 文件获取最新版本并正确命名插件【英文标题】:Using npm package.json file to get latest version and getting the plugin naming right 【发布时间】:2016-06-10 17:24:30 【问题描述】:

我是 NPM 新手,我有一个初学者问题。我正在浏览一篇文章,并看到作者要说的以下内容:

而不是做:

$ cd /path/to/the/project
$ npm install mongoose
$ npm install express
$ npm install jade

在您的应用程序目录的根目录中创建一个package.json 文件。

$ cd /path/to/the/project
$ touch package.json

package.json:


    "name": "your app name"
  , "version": "0.0.1"
  , "private": true
  , "dependencies": 
      "express": ">=2.5.0"
    , "jade": ">= 0.16.4"
    , "mongoose": ">=2.3.10"
  

然后输入以下命令将安装所有包。

$ npm install -l

难度

现在我真的很喜欢做以下事情的想法:


    "name": "your app name"
  , "version": "0.0.1"
  , "private": true
  , "dependencies": 
      "express": ">=2.5.0"
    , "jade": ">= 0.16.4"
    , "mongoose": ">=2.3.10"
  

但是如果不是说">=2.5.0",我希望它是最新版本怎么办? IE。我想要与转到 Git 目录并按下下载按钮时相同的版本。其次,我如何知道 npm 上的包的具体名称。例如,如果我检查滑块插件here,我会看到安装它的命令是:

npm install slider

这是否意味着如果我使用 package.json 安装上述插件,我的 package.json 将如下所示:


        "name": "your app name"
      , "version": "0.0.1"
      , "private": true
      , "dependencies": 
          "slider": "whatever"  // is this correct ??
      
    

我的问题是:

如何获得最新的稳定版 jQuery 插件 如何获得 package.json 文件的命名权。

【问题讨论】:

【参考方案1】:

是的,npm install(或 URL 中)之后的名称与 package.json 中使用的名称相同。

如果您想查找已安装的软件包的最新版本,您可以使用npm outdated,它将列出过时库的最新版本。然后,您可以手动更新 package.json 或使用npm-check-updates。

如果您要安装新的依赖项,您可以使用npm install package --save,它将安装最新版本的软件包并将其自动添加到您的package.json

【讨论】:

【参考方案2】:

只需使用* 作为版本,像这样:


    "name": "your app name"
  , "version": "0.0.1"
  , "private": true
  , "dependencies": 
      "slider": "*"
  

编辑: 正如 cmets 中所指出的,这不是一个好主意,最好将依赖关系声明为“^1.2.3”(将匹配 1.x)甚至更好 - “~1.2.3”(将匹配 1.2.x )。

【讨论】:

使用“*”(或 ">=0.0.0")通常不是一个好主意,因为如果库引入了不兼容的更改,您的项目可能会中断。 @JanTojnar 好!我同意你的说法......所以在这种情况下,如果我想找到最新版本的航点怎么办? npmjs.com/package/waypoints .. 我如何找到最新版本的插件,而不是去“google”并导航到项目 git repo .. 如果您要添加新的依赖项使用npm install package --save,如果您只想更新已安装的库,请查看npm outdated @JanTojnar npm install package --save 将保存当前版本...我想要的是假设我想在我什至 npm install package --save 之前安装一个插件 waypoints.js ,我想要知道最新版本是什么.. 我如何从 CMD 中找到它?? @Alexander Solonik 有npm info package

以上是关于使用 npm package.json 文件获取最新版本并正确命名插件的主要内容,如果未能解决你的问题,请参考以下文章

如何获取package.json 然后通过npm去创建插件

npm的使用

(译)package.json详解

如何使用 Gulp 将多个 (npm) package.json 文件合并为一个?

npm 脚本使用 package.json 中指定的版本重命名文件

Grunt,NPM和Bower之间的区别(package.json vs bower.json)