我正在尝试在生产环境中构建并运行Forge-RCDB project。我通过以下命令在Windows Powershell上工作:
npm run build-prod
$env:NODE_ENV ="production"
npm start
但是在npm start
> node bin/start.js
internal/modules/cjs/loader.js:583
throw err;
^
Error: Cannot find module './static'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
at Function.Module._load (internal/modules/cjs/loader.js:507:25)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:22:18)
at Object.<anonymous> (C:\Users\dyang\Documents\forge-rcdb.nodejs\bin\start.js:15:3)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! forge-rcdb@4.0.0 start: `node bin/start.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the forge-rcdb@4.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
我试图做
npm install node-static
但是错误仍然相同。有人可以帮我弄这个吗? ./static有什么用?
答案 0 :(得分:0)
./static
此处是指bin/static
,是使用npm run build-prod
构建它们之后,前端发出驻留的位置。您遇到的错误不是由于缺少node-static
或与此相关的任何特定依赖性。
在运行npm run build-prod
时检查控制台输出,然后验证内部是否内置bin/static
目录,此后是否正确生成。在下面用您的发现编辑您的问题或评论,我将相应地更新答案。
编辑:
经过自我测试,是的,原始的运行生产脚本错过了npm run build-server
位。将提高PR来解决此问题。
因此要在生产环境中运行的正确命令是:
npm run build-server && npm run build-prod && NODE_ENV=production npm start
并确保在config/production.config.js
答案 1 :(得分:0)
使用npm run build-server
代替npm run build-prod
解决了该问题。不确定其他潜在影响。