【问题标题】:Azure Website Instance not running defined Node Version in Package.jsonAzure 网站实例未运行 Package.json 中定义的节点版本
【发布时间】:2015-01-31 23:44:59
【问题描述】:

目前在 Azure 中,我正在使用“Azure 网站”实例来尝试运行 Docpad(NodeJS 应用程序)。在我的 package.json 文件中,我定义了以下内容..

"engines": {
  "node": "0.10.21",
  "npm": "1.x"
},

我尝试了许多不同的条目,从 0.10.x 到 0.8.x 都在这里列出 => http://azure.microsoft.com/en-us/documentation/articles/nodejs-specify-node-version-azure-apps/

问题是 Docpad 使用 Semver Entries 的依赖项,Azure 似乎完全忽略了我定义的 Node 版本,因为存在诸如...之类的错误。

npm WARN engine docpad@6.69.2: wanted: {"node":">=0.8","npm":">=1.2"} (current: {"node":"0.6.20","npm":"1.1.37"})

因此,由于诸如此类的依赖关系,当 NPM 去安装 Docpad 时,我会遇到严重/失败错误...

npm ERR! Error: No compatible version found: rimraf@'^2.2.8'
npm ERR! Valid install targets:
npm ERR! ["1.0.0","1.0.1","1.0.2","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8","1.0.9","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.1.1","2.1.2","2.1.3","2.1.4","2.2.0","2.2.1","2.2.2","2.2.3","2.2.4","2.2.5","2.2.6","2.2.8"]

我什至尝试在我的部署脚本中打印节点版本,只是为了让它返回 Azure 应该尊重的环境变量,但这显然是无效的。

我想要做的只是在 Azure 上部署一个 Docpad 网站,但我对在 Azure 中使用半最新版本的节点是如此困难感到目瞪口呆。任何帮助都将不胜感激!

【问题讨论】:

  • 我收到与sails 部署相同的错误您找到任何解决方案了吗?
  • 看起来node 的正确版本也必须作为依赖项提供,但就我而言,我无法安装该版本。

标签: json node.js azure docpad


【解决方案1】:

nodenpm 现在是 npm 包,可以作为项目的依赖项安装,因此一旦安装了依赖项,它将以正确的版本运行。

但是,要安装这些软件包,您需要从比引擎部分中的版本更新的版本开始:

  • 如果没有 npm >= 3 安装 node 包,过早删除现有版本的 node 会破坏您的系统
  • 如果没有 node >= 4,npm 包将无法工作(没有具体说明哪里出了问题)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-24
    • 2014-10-14
    相关资源
    最近更新 更多