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

如何为项目指定Node的本地版本?

运维笔记admin9浏览0评论

如何为项目指定Node的本地版本?

如何为项目指定Node的本地版本?

我有一个项目,我们正在尝试建立Node并使其在多个开发人员的机器上运行。问题在于,并非所有开发人员都是Node(甚至JavaScript)开发人员,我们要确保他们具有运行特定项目所需的Node版本(开发人员在其计算机上将有多个Node项目)。

我了解了package.json的“ engines”字段,但似乎找不到任何方法来安装所需的Node版本。为了进行测试,我通过NVM将当前节点版本设置为v0.10.29,创建了一个package.json并指定了v0.11.13的必要引擎,并尝试通过node命令以及package.json-启动Node。定义的npm start命令。

blackjack:node-engines-test sent1nel$ node -v
v0.10.29
blackjack:node-engines-test sent1nel$ cat package.json
{
  "name": "node-engines-test",
  "version": "0.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "engineStrict": true,
  "engines": {
    "node": "v0.11.13"
  },
  "start": "node index.js",
  "author": "",
  "license": "ISC"
}
blackjack:node-engines-test sent1nel$ cat index.js
console.log('Version: ' + process.version);
blackjack:node-engines-test sent1nel$ node index.js
Version: v0.10.29
blackjack:node-engines-test sent1nel$ npm start
blackjack:node-engines-test sent1nel$

npm install似乎也不在乎节点引擎版本。

blackjack:node-engines-test sent1nel$ npm install
npm WARN package.json [email protected] No description
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No README data
blackjack:node-engines-test sent1nel$ node -v
v0.10.29

什么给了?!

回答如下:

我相信engines和engineStrict适用于通过npm安装软件包的情况,而不是当您试图通过node来执行某些操作时的情况。这些选项警告/阻止用户安装并非旨在与其当前使用的节点版本兼容(或兼容)的软件包。

我对此问题有两种解决方案....
发布评论

评论列表(0)

  1. 暂无评论