Open drellert opened 6 months ago
I got it to work by placing the tar.gz file in the folder mentioned in the verbose stack (as per npm ERR! prebuild-install info looking for cached prebuild @ C:\Users\GLBL_RDP_USER_01\AppData\Local\npm-cache\_prebuilds\913611-msnodesqlv8-v4.1.2-node-v115-win32-x64.tar.gz
).
However, now, while my dev server is working just fine, my prod server shows the following when attempting to start my node.js server:
Error: Cannot find module '../build/Release/sqlserverv8.node'
Require stack:
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\util.js
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\table-column.js
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\table.js
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\connection.js
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\sql-client.js
- C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\sql.js
- C:\DKAssets\Backend\node_modules\mssql\lib\msnodesqlv8\connection-pool.js
- C:\DKAssets\Backend\node_modules\mssql\lib\msnodesqlv8\index.js
- C:\DKAssets\Backend\node_modules\mssql\msnodesqlv8.js
- C:\DKAssets\Backend\src\controllers\websocket\database\index.js
- C:\DKAssets\Backend\src\controllers\websocket\index.js
- C:\DKAssets\Backend\src\app.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1149:15)
at Module._load (node:internal/modules/cjs/loader:990:27)
at Module.require (node:internal/modules/cjs/loader:1237:19)
at require (node:internal/modules/helpers:176:18)
at C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\util.js:4:21
at Object.<anonymous> (C:\DKAssets\Backend\node_modules\msnodesqlv8\lib\util.js:34:3)
at Module._compile (node:internal/modules/cjs/loader:1378:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1437:10)
at Module.load (node:internal/modules/cjs/loader:1212:32)
at Module._load (node:internal/modules/cjs/loader:1028:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\util.js',
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\table-column.js',
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\table.js',
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\connection.js',
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\sql-client.js',
'C:\\DKAssets\\Backend\\node_modules\\msnodesqlv8\\lib\\sql.js',
'C:\\DKAssets\\Backend\\node_modules\\mssql\\lib\\msnodesqlv8\\connection-pool.js',
'C:\\DKAssets\\Backend\\node_modules\\mssql\\lib\\msnodesqlv8\\index.js',
'C:\\DKAssets\\Backend\\node_modules\\mssql\\msnodesqlv8.js',
'C:\\DKAssets\\Backend\\src\\controllers\\websocket\\database\\index.js',
'C:\\DKAssets\\Backend\\src\\controllers\\websocket\\index.js',
'C:\\DKAssets\\Backend\\src\\app.js'
]
}
The '../build/' folder is indeed empty on my prod server, but not on my dev server. I've installed the package in exactly the same manner on both servers. I cannot manually copy the contents of the '../build/' folder from dev to prod, since my dev server uses node v20.11.0 while prod uses node v21.6.1 (for no apparent reason, since I used the same msi-file from https://nodejs.org/ on both servers). Manually copying the contents results in a "Module did not self-register" error instead.
After updating to node v.20.11.0 (and npm v10.4.0), I cannot install msnodesqlv8. It was working fine before, but the update required me to rebuild my project and now installation is failing on this package (
npm install msnodesqlv8 --save
, with or without--save
). Installing another package (npm install ws
) works just fine.I am running my project on a server with 64-bit Windows 10 (Windows Server 2019 Datacenter), x64 based processor.
This is the full stack trace after running
npm install msnodesqlv8 --save
: