node.js - 从启动脚本运行 Node.js 应用程序会导致“找不到模块”错误
问题描述
我刚刚组装了我的第一个 Express 应用程序。我可以毫无问题地运行服务器,node server.js
但是当我尝试使用start
脚本(似乎 Heroku 需要)时,出现以下错误。与相关模块似乎是一个包的类似问题不同,我看不到所指的“模块”是什么。我试过删除npm
and npm-cache
,node-modules
等。
操作系统: Windows 8.1
节点: v8.11.3
NPM: v5.6.0
Error: Cannot find module 'C:\Users\Derek\Documents\Cloud\Projects\2018-2019\NodeTest\example-server\server.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:612:3
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! example-server@1.0.0 start: `node server.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the example-server@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional log
ging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Derek\AppData\Roaming\npm-cache\_logs\2018-09-09T07_27_10_7
14Z-debug.log
我的package.json
:
{
"name": "example-server",
"version": "1.0.0",
"main": "src/server.js",
"private": true,
"scripts": {
"start": "node server.js"
},
"dependencies": {
"body-parser": "^1.18.3",
"dotenv": "^6.0.0",
"express": "^4.16.3",
"firebase-admin": "^6.0.0",
"pg": "^7.4.3"
}
}
项目结构:
example-server
└───node_modules
└───src
│ └───server.js
│
└───package.json
这是日志文件的输出:
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Development\\nodejs\\node.exe',
1 verbose cli 'C:\\Development\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli 'start' ]
2 info using npm@5.6.0
3 info using node@v8.11.3
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle example-server@1.0.0~prestart: example-server@1.0.0
6 info lifecycle example-server@1.0.0~start: example-server@1.0.0
7 verbose lifecycle example-server@1.0.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle example-server@1.0.0~start: PATH: C:\Development\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\Derek\Documents\Cloud\Projects\2018-2019\NodeTest\example-server\node_modules\.bin;C:\Development\PostgreSQL\10\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files\ImageMagick-7.0.7-Q16;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Development\Python3\;C:\Development\Python3\Scripts;C:\Program Files (x86)\Common Files\Intel\Shared Files\cpp\bin\Intel64;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files (x86)\Windows Live\Shared;C:\Development\cURL\bin;C:\Development\Python27\;C:\Program Files (x86)\GtkSharp\2.12\bin;C:\Program Files\TortoiseSVN\bin;C:\Development\cygwin64\bin;C:\Development\MinGW\bin;C:\Development\ChucK\/bin;C:\Program Files\Git LFS;C:\Development\ANDROID_SDK;C:\Development\ANDROID_SDK\tools;C:\Program Files (x86)\WinMerge;C:\Program Files (x86)\Skype\Phone\;C:\Development\Yarn\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\dotnet\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Amazon\AWSCLI\;C:\Development\nodejs\;C:\Program Files\heroku\bin;C:\Users\Derek\AppData\Local\GitHub\PortableGit_69bd5e6f85e4842f07db71c9618a621154c52254\bin;C:\Development\flutter\bin;C:\Program Files\ImageMagick-7.0.7-Q16;C:\Development\ffmpeg-3.4.1-win64-static\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Development\Python3\Scripts\;C:\Development\Python3\;C:\Development\RailsInstaller\Ruby2.2.0\bin;C:\Development\ANDROID_SDK\platform-tools\;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files (x86)\Windows Live\Shared;C:\Development\cURL\bin;C:\Users\Derek\AppData\Roaming\npm
9 verbose lifecycle example-server@1.0.0~start: CWD: C:\Users\Derek\Documents\Cloud\Projects\2018-2019\NodeTest\example-server
10 silly lifecycle example-server@1.0.0~start: Args: [ '/d /s /c', 'node server.js' ]
11 silly lifecycle example-server@1.0.0~start: Returned: code: 1 signal: null
12 info lifecycle example-server@1.0.0~start: Failed to exec start script
13 verbose stack Error: example-server@1.0.0 start: `node server.js`
13 verbose stack Exit status 1
13 verbose stack at EventEmitter.<anonymous> (C:\Development\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:285:16)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at EventEmitter.emit (events.js:214:7)
13 verbose stack at ChildProcess.<anonymous> (C:\Development\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at ChildProcess.emit (events.js:214:7)
13 verbose stack at maybeClose (internal/child_process.js:925:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid example-server@1.0.0
15 verbose cwd C:\Users\Derek\Documents\Cloud\Projects\2018-2019\NodeTest\example-server\src
16 verbose Windows_NT 6.3.9600
17 verbose argv "C:\\Development\\nodejs\\node.exe" "C:\\Development\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
18 verbose node v8.11.3
19 verbose npm v5.6.0
20 error code ELIFECYCLE
21 error errno 1
22 error example-server@1.0.0 start: `node server.js`
22 error Exit status 1
23 error Failed at the example-server@1.0.0 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
我并不是要在这里转储我的错误,但我对 Node 还是很陌生,并且花了几个小时谷歌搜索无济于事。
解决方案
您的文件路径server.js
错误"start": "node server.js"
尝试:"start": "node src/server.js"
推荐阅读
- javascript - 如何删除 Metronic 管理主题中的左侧边栏?
- neural-network - Tesseract 无法识别带有手写文字的图像,我该怎么办?
- java - Android Studio 中的界面如何工作?
- html - 在 Angular 中,是否有办法根据您在第一个表中选择的内容填写第二个表?
- python - 使用 RecycleView 滚动时如何保持 Kivy ToggleButton 状态?
- c - 为什么 memset 部分初始化?
- php - 损坏的php重定向功能
- python - 我如何使用 __.init__ 并为 python 做 OOP
- javascript - Javascript 调用栈
- reactjs - DetailedHTMLProps 和 HTMLAttributes 有什么区别?