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

"npm ERR! errno 3221225477" Error in Node when making a query using 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:\Users\USERNAME\AppData\Roaming\npm-cache\_logs19-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 Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\version_center\node_modules\.bin;C:\Users\USERNAME\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\local\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Users\USERNAME\bin;C:\Python27;C:\Python27\Scripts;C:\app\client\USERNAME\product.2.0\client_1;C:\app\client\USERNAME\product.2.0\client_1\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files\PuTTY;C:\Program Files\Git\cmd;C:\Program Files\nodejs;C:\ProgramData\chocolatey\bin;C:\Users\USERNAME\AppData\Local\Microsoft\WindowsApps;C:\Users\USERNAME\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\USERNAME\AppData\Local\Programs\Fiddler;C:\Users\USERNAME\AppData\Roaming\npm;C:\app\instantclient_19_3;C:\Program Files\nodejs\node.exe;C:\Program Files\Git\usr\bin\vendor_perl;C:\Program Files\Git\usr\bin\core_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 Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:210:5)
13 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.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 ]

脚本:

"scripts": { "watch": "pm2 logs", "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、程序包-lock.json,然后重新安装。

我已完全禁用所有防病毒软件和防火墙,包括我在 3 个不同网络上测试过的网络防火墙。

对正在发生的事情有什么想法吗?

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

我找到了 here 的东西,这是我找到 npm cache clean --force 解决方案的地方。

希望对您有所帮助。我是这个论坛的新成员,所以请不要因为我对情况的可怕解释而责备我。我只是需要一些名声和实践,而不是更多的气馁。

据我所知,这似乎是一个 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 节点版本,因为它可能会解决您的问题

对于以后偶然发现这个问题的人,我是这样"fixed"的:

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

它很乱,但我从未找到此错误的原因或如何修复它。

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