当使用'gcloud'模块时,NodeJs Google计算引擎无效ELF标头
我正在开发一个需要我使用gcloud nodejs模块的项目。 我正在使用node app
在本地testing此项目,并使用gcloud preview app run app.yaml
在gcloud上进行本地testing。 当我在我的文件中有下面的代码项目运行与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机器上安装。
- 通过Google Compute Engine从外部访问Node.js服务器
- 在计算引擎上托pipe的nodeJS项目中,在哪里定义datastore-indexes.xml?
- 谷歌云健康检查失败
- 使用Google云端平台进行部署时出错
- 我可以浏览node.js项目的本地Google Datastore模拟器数据吗?
- 我可以连接到部署在应用程序引擎上的从本地主机部署mongoDB的谷歌云,但不能从同一个应用程序
- Google Compute Engine(GCE)允许使用WebSockets
- 如何编写Node.js服务器以支持多服务器水平缩放
- 在Google Compute Engine上自动安装FFMPEG(Debian Wheezy 7.8)