"npm ERR! errno 3221225477" 使用 oracledb 进行查询时节点中的错误



这是命令行中的错误本身:

npm ERR! code ELIFECYCLE
npm ERR! errno 3221225477
npm ERR! versioncenter@0.0.1 start: `node ./bin/www`
npm ERR! Exit status 3221225477
npm ERR!
npm ERR! Failed at the versioncenter@0.0.1 start 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!     C:UsersUSERNAMEAppDataRoamingnpm-cache_logs2019-11-13T17_17_52_250Z-debug.log
/c/Program Files/nodejs/npm: line 37:  1341 Segmentation fault      "$NODE_EXE" "$NPM_CLI_JS" "$@"

这是错误日志:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   'C:\Program Files\nodejs\node.exe',
1 verbose cli   'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'start'
1 verbose cli ]
2 info using npm@6.11.3
3 info using node@v12.11.1
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle versioncenter@0.0.1~prestart: versioncenter@0.0.1
6 info lifecycle versioncenter@0.0.1~start: versioncenter@0.0.1
7 verbose lifecycle versioncenter@0.0.1~start: unsafe-perm in lifecycle true
8 verbose lifecycle versioncenter@0.0.1~start: PATH: C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecyclenode-gyp-bin;C:version_centernode_modules.bin;C:UsersUSERNAMEbin;C:Program FilesGitmingw64bin;C:Program FilesGitusrlocalbin;C:Program FilesGitusrbin;C:Program FilesGitusrbin;C:Program FilesGitmingw64bin;C:Program FilesGitusrbin;C:UsersUSERNAMEbin;C:Python27;C:Python27Scripts;C:appclientUSERNAMEproduct12.2.0client_1;C:appclientUSERNAMEproduct12.2.0client_1bin;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:Program FilesPuTTY;C:Program FilesGitcmd;C:Program Filesnodejs;C:ProgramDatachocolateybin;C:UsersUSERNAMEAppDataLocalMicrosoftWindowsApps;C:UsersUSERNAMEAppDataLocalProgramsMicrosoft VS Codebin;C:UsersUSERNAMEAppDataLocalProgramsFiddler;C:UsersUSERNAMEAppDataRoamingnpm;C:appinstantclient_19_3;C:Program Filesnodejsnode.exe;C:Program FilesGitusrbinvendor_perl;C:Program FilesGitusrbincore_perl
9 verbose lifecycle versioncenter@0.0.1~start: CWD: C:version_center
10 silly lifecycle versioncenter@0.0.1~start: Args: [ '/d /s /c', 'node ./bin/www' ]
11 silly lifecycle versioncenter@0.0.1~start: Returned: code: 3221225477  signal: null
12 info lifecycle versioncenter@0.0.1~start: Failed to exec start script
13 verbose stack Error: versioncenter@0.0.1 start: `node ./bin/www`
13 verbose stack Exit status 3221225477
13 verbose stack     at EventEmitter.<anonymous> (C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecycleindex.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:210:5)
13 verbose stack     at ChildProcess.<anonymous> (C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecyclelibspawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:210:5)
13 verbose stack     at maybeClose (internal/child_process.js:1021:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
14 verbose pkgid versioncenter@0.0.1
15 verbose cwd C:version_center
16 verbose Windows_NT 10.0.17134
17 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "run" "start"
18 verbose node v12.11.1
19 verbose npm  v6.11.3
20 error code ELIFECYCLE
21 error errno 3221225477
22 error versioncenter@0.0.1 start: `node ./bin/www`
22 error Exit status 3221225477
23 error Failed at the versioncenter@0.0.1 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 3221225477, true ]

脚本:

"脚本":{"watch":"pm2日志","start":"pm2 start./bin/www--watch--ignore watch='node_modules'--max memory restart 100M&npm run watch","startDev":"pm2 start./bin/www","stop":"pm2 stop 0"}

此错误是间歇性的。

我尝试过清理缓存、删除node_modules、package-lock.json和重新安装。

我已经完全禁用了所有的防病毒和防火墙,包括网络防火墙,因为我已经在3个不同的网络上进行了测试。

有什么想法吗?

根据我所能发现的,这似乎是一个与windows访问违规相关的错误:

https://github.com/nodejs/node/blob/842e5a10ac59c826f875ef79e92d144e2655cc9a/test/common.js#L502-L505

// On Windows, v8's base::OS::Abort triggers an access violation,
// which corresponds to exit code 3221225477 (0xC0000005)
if (process.platform === 'win32')
expectedExitCodes = [3221225477];

[编辑:]最终尝试升级(node@v12.11.1-->node@v12.13.1)到节点的最新LTS版本,因为它可能会解决您的问题

如果运行npm cache clean --force,将清除npm缓存。这可能会删除缓存中可能导致此问题的任何内容。如果您仍然有问题,我建议您重新安装npm/node.js,这将清除任何与npm/node.js相关的问题(如果有的话(。它也可能与防火墙有关,尽管OP表示它与防火墙有关。仔细检查你的防火墙以防万一。

我在这里找到了npm cache clean --force解决方案。

对于将来偶然发现这个问题的人,我就是这样"解决"它的:

我使用PM2来包装应用程序,并在应用程序崩溃时自动重新启动,它不会停止崩溃,但它会在与用户保持连接的同时重新加载,这样他们就不会注意到。

这是混乱的,但我从来没有找到这个错误的原因或如何修复它

对我来说,重新安装64位版本的Node JS已经成功了。我查找了那个错误代码,发现它是一个错误,因为使用了32位版本。尽管我使用x86安装程序下载了它。使用64位安装程序下载。

再次尝试安装node.js它对我有用如果安装节点不起作用,请安装所有依赖项

最新更新