npm 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具。通过 npm 可以安装、共享、分发代码,管理项目依赖关系。
npm 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具。通过 npm 可以安装、共享、分发代码,管理项目依赖关系。
npm 完全用 JavaScript 写成,最初由艾萨克·施吕特(Isaac Z. Schlueter)开发。艾萨克表示自己意识到“??楣芾砗茉愀狻钡奈侍猓⒖吹搅?PHP 的 PEAR 与 Perl 的 CPAN 等软件的缺点,于是编写了 npm。
说明
npm 会随着 Node.js 自动安装。npm ??椴挚馓峁┝艘桓雒皉egistry”的查询服务,用户可通过本地的 npm 命令下载并安装指定??椤4送庥没б部梢酝ü?npm 把自己设计的??榉址⒌?registry 上面。
registry 上面的模块通常采用 CommonJS 格式,而且都包含一个 JSON 格式的元文件。截止到 2016 年 7 月,npm 的 registry 上面已经注册了超过 280,000 个???。
npm 的??橐浴跋鹊较鹊谩钡脑蜃⒉?,各??樽髡卟换岱⑸炻?。然而一旦有人撤回自己发布的模块,那么不仅会使依赖那个模块的项目出现问题,还会带来安全风险。例如有一个??榻凶觥發eft-pad”,其中只有一个字符串对齐的功能。但是,当作者把它从 registry 里面移除之后,许多??楸阄薹ㄕ饭菇ā?/p>
npm 的 registry 没有审核机制,因此会存在一些低质量、不安全甚至有害的模块,不过 npm 服务器的管理员也可以删除有害??椴⒆柚共换澈靡獾挠没?。
另外也有人为 npm 制作了统计功能,这样可以让开发者了解各??榈氖褂们榭觯镏茄≡窈鲜实哪??。
使用
npm 可以管理本地项目的所需模块并自动维护依赖情况,也可以管理全局安装的 JavaScript 工具。
如果一个项目中存在 package.json 文件,那么用户可以直接使用 npm install 命令自动安装和维护当前项目所需的所有???。在 package.json 文件中,开发者可以指定每个依赖项的版本范围,这样既可以保证??樽远拢植换嵋蛭枘?楣δ艽蠓浠贾孪钅砍鱿治侍?。开发者也可以选择将??楣潭ㄔ谀掣霭姹局?。
TAG:npm是什么

客服1