使用 'gcloud' 模块时,NodeJs Google 计算引擎无效 ELF Header

NodeJs Google Compute Engine Invalid ELF Header when using 'gcloud' module

我正在做一个需要我使用 gcloud nodejs 模块的项目。我在本地使用 node app 测试这个项目,在本地使用 gcloud preview app run app.yaml 在 gcloud 上测试这个项目。 当我的文件中有以下代码时,项目 运行s 与 node app 但不 运行 与 gcloud 使用 gcloud preview app run app.yaml - 我得到一个 invalid ELF Header错误 。

var gcloud = require('gcloud');

我认为该项目没有运行 gcloud 命令,因为它与我在我的项目中使用 gcloud 模块有关。如果我从我的文件中删除该代码,项目 运行 使用 gcloud 命令就可以了。我应该怎么做才能解决这个问题?

我能够通过使用 try-catch

得到错误
try {
   var gcloud = require('gcloud');

}  catch (e) {
   e = 'Error loading required classes for gcloud: '+gcloud+ ':  '+e
   console.log(e)
   res.status(200).send(e);
}

错误:

Error loading required classes for gcloud: undefined: Error:
/app/node_modules/gcloud/node_modules/hash-stream-
validation/node_modules/sse4_crc32/build/Release/sse4_crc32.node: invalid ELF header

我能够通过删除 node_modules 目录然后部署项目来解决这个问题。该问题与 OS X 编译库无法在 Linux 机器上运行有关。因此它需要在 Linux 机器上进行全新安装 - 删除 node_modules 直接强制它在 linux 机器上进行全新安装。