最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

使用package.json在全局和本地安装依赖项

运维笔记admin11浏览0评论

使用package.json在全局和本地安装依赖项

使用package.json在全局和本地安装依赖项

使用npm我们可以使用-g选项全局安装模块。我们如何在package.json文件中执行此操作?

假设,这些是我在package.json文件中的依赖项

"dependencies": {
    "mongoose": "1.4.0",
    "node.io" : "0.3.3",
    "jquery"  : "1.5.1",
    "jsdom"   : "0.2.0",
    "cron"    : "0.1.2"
  }

当我运行npm install时,我只想在全局安装node.io,其他的应该在本地安装。这有选择吗?

回答如下:

新注意:您可能不希望或不需要这样做。您可能想要做的只是将这些类型的命令依赖项放在build.json的devDependencies部分中进行构建/测试等。无论何时你在package.json中使用来自scripts的东西,你的devDependencies命令(在node_modules / .bin中)就好像它们在你的路径中一样。

例如:

npm i --save-dev mocha # Install test runner locally
npm i --save-dev babel # Install current babel locally

然后在package.json中:

// devDependencies has mocha and babel now

"scripts": {
  "test": "mocha",
  "build": "babel -d lib src",
  "prepublish": "babel -d lib src"
}

然后在命令提示符下运行:

npm run build # finds babel
npm test # finds mocha

npm publish # will run babel first

但是如果你真的想要全局安装,你可以在package.json的脚本部分添加一个预安装:

"scripts": {
  "preinstall": "npm i -g themodule"
}

所以实际上我的npm安装再次执行npm install ..这很奇怪,但似乎工作。

注意:如果您使用npm的最常见设置,那么您可能会遇到问题,其中全局Node包安装需要sudo。一种选择是更改您的npm配置,因此这不是必需的:

npm config set prefix ~/npm,将$ HOME / npm / bin添加到$ PATH,将export PATH=$HOME/npm/bin:$PATH附加到你的~/.bashrc

发布评论

评论列表(0)

  1. 暂无评论