我是JS / Node.js / Vue.js的新手,并试图了解它并在https://github.com/vuejs/vue-hackernews-2.0部署Hackernews代码 . 我成功地在Windows 10和Ubuntu上本地部署它,它工作正常(节点v8.1.2,npm 5.0.3) . 之后,我尝试将其部署在Heroku( git push heroku master
)以及Google Can AppEngine( gcloud app deploy app.yaml
)上,并且我得到了错误"Cannot find module ./dist/vue-ssr-server-bundle.json" . 详情如下:
Updating service [default]...failed.
ERROR: (gcloud.app.deploy) Error Response: [9]
Application startup error:
yarn start v0.27.5
$ cross-env NODE_ENV=production node server
module.js:487
throw err;
^
Error: Cannot find module './dist/vue-ssr-server-bundle.json'
at Function.Module._resolveFilename (module.js:485:15)
at Function.Module._load (module.js:437:25)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/app/server.js:41:18)
at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
error Command failed with exit code 1.
在尝试进一步调试此问题时,我将 package.json
(第8行)从: "start": "cross-env NODE_ENV=production node server",
更改为: "start": "cross-env NODE_ENV=development node server",
这也适用于本地 . 但是在Heroku和Google Cloud 部署上,我得到了不同的错误:
Updating service [default]...failed.
ERROR: (gcloud.app.deploy) Error Response: [9]
Application startup error:
yarn start v0.27.5
$ cross-env NODE_ENV=development node server
module.js:487
throw err;
^
Error: Cannot find module 'glob'
at Function.Module._resolveFilename (module.js:485:15)
at Function.Module._load (module.js:437:25)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/app/build/webpack.client.config.js:1:76)
at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
error Command failed with exit code 1.
我检查了package.json中的'glob'依赖项 . 这是代码的问题,还是我在环境中遗漏了将其部署到 Cloud 中的内容?有哪些方法可以解决此问题?
谢谢