我将节点v7.2.1更新为v8.1.4。我有异常说"找不到模块' async'和'时刻'更新后,我使用npm install命令安装它们(如stackoverflow线程"所示) 我测试了应用程序,一切似乎都在我的localhost上工作,但是当我将它部署到Heroku时,导致构建失败并出现此错误消息。
-----> Node.js app detected
-----> Creating runtime environment
NPM_CONFIG_LOGLEVEL=error
NPM_CONFIG_PRODUCTION=true
NODE_VERBOSE=false
NODE_ENV=production
NODE_MODULES_CACHE=true
-----> Installing binaries
engines.node (package.json): v8.1.4
engines.npm (package.json): unspecified (use default)
Resolving node version v8.1.4 via semver.io...
Downloading and installing node 8.1.4...
Using default npm version: 5.0.3
-----> Restoring cache
Skipping cache restore (new-signature)
-----> Building dependencies
Installing node modules (package.json)
> lwip@0.0.9 install /tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/node_modules/lwip
> node-gyp rebuild
make: Entering directory `/tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/node_modules/lwip/build'
CXX(target) Release/obj.target/lwip_decoder/src/decoder/init.o
CXX(target) Release/obj.target/lwip_decoder/src/decoder/util.o
CXX(target) Release/obj.target/lwip_decoder/src/decoder/buffer_worker.o
../src/decoder/buffer_worker.cpp: In constructor ‘DecodeBufferWorker::DecodeBufferWorker(Nan::Callback*, v8::Local<v8::Object>&, buf_dec_f_t)’:
../src/decoder/buffer_worker.cpp:8:58: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
_height(0), _channels(0), _trans(false), _metadata("") {
^
CXX(target) Release/obj.target/lwip_decoder/src/decoder/jpeg_decoder.o
CXX(target) Release/obj.target/lwip_decoder/src/decoder/png_decoder.o
CXX(target) Release/obj.target/lwip_decoder/src/decoder/gif_decoder.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jmemnobs.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jcomapi.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdapimin.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdapistd.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdatadst.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdatasrc.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdcoefct.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdcolor.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jddctmgr.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdhuff.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdinput.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdmainct.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdmarker.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdmaster.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdpostct.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdsample.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jerror.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jfdctflt.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jfdctfst.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jfdctint.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jidctflt.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jidctfst.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jidctint.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jutils.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jmemmgr.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdarith.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jdmerge.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jaricom.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jquant1.o
CC(target) Release/obj.target/lwip_decoder/src/lib/jpeg/jquant2.o
CC(target) Release/obj.target/lwip_decoder/src/lib/png/png.o
In file included from ../src/lib/png/png.c:14:0:
../src/lib/png/pngpriv.h:805:4: error: #error ZLIB_VERNUM != PNG_ZLIB_VERNUM "-I (include path) error: see the notes in pngpriv.h"
# error ZLIB_VERNUM != PNG_ZLIB_VERNUM ^
make: *** [Release/obj.target/lwip_decoder/src/lib/png/png.o] Error 1
make: Leaving directory `/tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/node_modules/lwip/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:125:13)
gyp ERR! stack at ChildProcess.emit (events.js:213:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12)
gyp ERR! System Linux 3.13.0-123-generic
gyp ERR! command "/tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/.heroku/node/bin/node" "/tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /tmp/build_b8b26cc33675c474632f5536a0d0ddaf/RugCoPro-rugcopro-d2ada6e26415ce13c992c071360307b40214a4bc/node_modules/lwip
gyp ERR! node -v v8.1.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! lwip@0.0.9 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the lwip@0.0.9 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /app/.npm/_logs/2017-07-13T16_28_01_508Z-debug.log
-----> Build failed
We're sorry this build is failing! You can troubleshoot common issues here:
https://devcenter.heroku.com/articles/troubleshooting-node-deploys
If you're stuck, please submit a ticket so we can help:
https://help.heroku.com/
Love,
Heroku
! Push rejected, failed to compile Node.js app. ! Push failed
我是新手,所以有人能让我知道可能是什么问题吗? 非常感谢你。
答案 0 :(得分:1)
从构建日志看,它似乎是安装lwip
包的问题。这是Github上记录的已知问题。
看起来还没有官方解决方案,但提出了许多解决方法。一种是使用包含更新的lwip
和libpng
依赖项的修补zlib
包。在你的package.json中你需要输入
"lwip": "https://github.com/Pajk/lwip#development"
您应该检查Github上的讨论,也许其他解决方法对您有用。