我在node.js中安装包时遇到问题。我的npm版本是2.14.3,我需要安装sqlite3包。 在我的proyect路径中,我使用了这个命令:" npm install sqlite3 --save"我有下一个错误:
npm WARN package.json node-sqlite@1.0.1 no description npm WARN package.json node-sqlite@1.0.1没有存储库字段。警告 package.json node-sqlite@1.0.1没有README数据npm WARN package.json node-sqlite@1.0.1没有许可证字段。 /
sqlite3@3.1.8 install / home / pi / Desktop / node-sqlite_Sockets / node_modules / sqlite3 node-pre-gyp install - fallback-to-build node-pre-gyp ERR!试图下载(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.8/node-v46-linux-arm.tar.gz node-pre-gyp ERR!未找到sqlite3@3.1.8和。的预构建二进制文件 node@4.1.0(node-v46 ABI)(回退到源编译时带有 node-gyp)make:输入目录 ' /家/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/建' ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep 发布/ obj / gen / sqlite-autoconf-3150000 / sqlite3.c触摸 发布/ obj.target / deps / action_before_build.stamp CC(目标) 发布/ obj.target / sqlite3的/ GEN / SQLite的-autoconf的315万/ sqlite3.o 发布/ obj / gen / sqlite-autoconf-3150000 / sqlite3.c:199451:1:致命 错误:打开依赖项文件 ./Release/.deps/Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o.d.raw: 没有这样的文件或目录编译终止。 deps / sqlite3.target.mk:120:目标的配方 '推出/ obj.target / sqlite3的/根/源码-autoconf的3150000 / sqlite3.o' 失败了:*** [发布/ obj.target / sqlite3的/根/源码-autoconf的3150000 / sqlite3.o] 错误1 make:离开目录 ' /家/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/建' GYP 呃!构建错误gyp ERR!堆栈错误:
make
失败,退出代码: 2吉普ERR!在ChildProcess.onExit堆栈 (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23) gyp ERR!堆栈在emitTwo(events.js:87:13)gyp ERR!堆栈在 ChildProcess.emit(events.js:172:7)gyp ERR!堆栈在 Process.ChildProcess._handle.onexit(internal / child_process.js:200:12) gyp ERR!系统Linux 4.4.21-v7 + gyp ERR!命令 "在/ usr / local / bin中/节点" " /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "建立" " - 后退到构建" " - 模块= /家庭/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/ lib中/结合/节点-V46-Linux的臂/ node_sqlite3.node" " - MODULE_NAME = node_sqlite3" " - module_path中= /家庭/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/ LIB /结合/节点-V46-Linux的臂" gyp ERR! cwd / home / pi / Desktop / node-sqlite_Sockets / node_modules / sqlite3 gyp ERR! node -v v4.1.0 gyp ERR! node-gyp -v v3.0.3 gyp ERR!不好 node-pre-gyp ERR!构建错误node-pre-gyp ERR!堆栈错误:失败 执行' / usr / local / bin / node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build - fallback-to-build --module = /家庭/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/ LIB /结合/节点-V46-Linux的臂/ node_sqlite3.node --module_name = node_sqlite3 --module_path = / home / pi / Desktop / node-sqlite_Sockets / node_modules / sqlite3 / lib / binding / node-v46-linux-arm' (1)node-pre-gyp ERR!在ChildProcess堆栈。 (/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29) node-pre-gyp ERR!堆栈在emitTwo(events.js:87:13)node-pre-gyp 呃!堆栈在ChildProcess.emit(events.js:172:7)node-pre-gyp 呃!在maybeClose堆栈(内部/ child_process.js:817:16) node-pre-gyp ERR!在Process.ChildProcess._handle.onexit堆栈 (internal / child_process.js:211:5)node-pre-gyp ERR!系统Linux 4.4.21-v7 + node-pre-gyp ERR!命令" / usr / local / bin / node" " /home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "安装" " - 后退到构建" node-pre-gyp ERR! CWD / home / pi / Desktop / node-sqlite_Sockets / node_modules / sqlite3 node-pre-gyp 呃! node -v v4.1.0 node-pre-gyp ERR! node-pre-gyp -v v0.6.31 node-pre-gyp ERR!不行无法执行' / usr / local / bin / node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build - fallback-to-build --module = /家庭/ PI /桌面/节点sqlite_Sockets / node_modules / sqlite3的/ LIB /结合/节点-V46-Linux的臂/ node_sqlite3.node --module_name = node_sqlite3 --module_path = / home / pi / Desktop / node-sqlite_Sockets / node_modules / sqlite3 / lib / binding / node-v46-linux-arm' (1)npm ERR! Linux 4.4.21-v7 + npm ERR! argv" / usr / local / bin / node" "在/ usr / local / bin中/ NPM" "安装" " sqlite3的" " - 保存"错误的ERR!节点v4.1.0 错误的ERR! npm v2.14.3 npm ERR!代码ELIFECYCLE npm ERR! sqlite3@3.1.8 安装:node-pre-gyp install --fallback-to-build
npm ERR!出口 状态1 npm ERR!错误的ERR! sqlite3@3.1.8安装脚本失败 ' node-pre-gyp install -fallback-to-build'。错误的ERR!这是最多的 可能是sqlite3包的问题,npm ERR!不是用npm 本身。错误的ERR!告诉作者你的系统失败了:npm 呃! node-pre-gyp install --fallback-to-build npm ERR!你可以得到 他们的信息来自:npm ERR! npm owner ls sqlite3 npm ERR!有 可能是上面的额外日志输出错误的ERR!请包括 以下文件包含任何支持请求:npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log
如果我尝试执行我的node.js程序,我有下一个错误:
module.js:338 throw err; ^错误:找不到模块 ' /home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node' 在Function.Module._resolveFilename(module.js:336:15)at Module.require中的Function.Module._load(module.js:286:25) (module.js:365:17)at对象的require(module.js:384:17)。 (/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/sqlite3.js:4:15) at Module._compile(module.js:434:26)at Object.Module._extensions..js (module.js:452:10)在Module.load(module.js:355:32)at Module.require中的Function.Module._load(module.js:310:12) (module.js:365:17)
更新后(npm install -g npm)
npm WARN checkPermissions缺少写入权限 在/ usr / local / lib目录/ node_modules / NPM npm WARN checkPermissions缺少写入权限 在/ usr / local / lib目录/ node_modules 在/ usr / local / lib目录 └──npm@3.10.9 错误的ERR! Linux 4.4.21-v7 + 错误的ERR! argv" / usr / local / bin / node" " / usr / local / bin / npm" "安装" " -g" " NPM"错误的ERR!节点v4.1.0 npm ERR! npm v3.10.9 npm ERR!路径 在/ usr / local / lib目录/ node_modules / NPM 错误的ERR!代码EACCES npm ERR! errno -13 错误的ERR!系统调用访问 错误的ERR!错误:EACCES:权限被拒绝,访问权限 '在/ usr /本地/ LIB / node_modules / NPM'错误的ERR!在错误(本机)npm 呃! {[错误:EACCES:权限被拒绝,访问权限 ' / usr / local / lib / node_modules / npm'] npm ERR!错误:-13,npm ERR!
代码:' EACCES',npm ERR!系统调用:'访问',npm ERR!路径: '在/ usr /本地/ LIB / node_modules / NPM' } npm ERR!错误的ERR!请试试 以root / Administrator再次运行此命令。错误的ERR!请 包含以下任何支持请求的文件:npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log
有人知道怎么解决吗? 提前谢谢!
最好的问候。
答案 0 :(得分:2)
你之前在另一个应用程序上安装了sqlite3吗?因为您的缓存文件可能已损坏。尝试使用npm cache clean sqlite3
将其从缓存中删除,或使用npm cache clean
清除整个缓存并再次运行安装脚本。
修改:编辑完问题后。它似乎是一个权限错误。尝试使用sudo npm install -g npm
摘要:这是旧版npm版本的问题。对更新版本的更新通过运行sudo npm install -g npm
来解决了这个问题。
答案 1 :(得分:1)
这在 Windows 10 上对我有用。
npm uninstall sqlite3
npm cache clean
npm install sqlite3
答案 2 :(得分:0)
这对我有用:
首先,我安装了Visual C ++ 2013,然后通过运行进行全局配置
public class TV {
public int channelNumber = 11;
public int getChannelNumber() {
return channelNumber;
}
public void addToChannelsHistory(int channnelNumber) {
Queue<Integer> fifo = new CircularFifoQueue<Integer>(3);
fifo.add(channnelNumber);
System.out.print(fifo);
}
public static void main(String[] args) {
TV tv = new TV();
tv.addToChannelsHistory(11);
tv.addToChannelsHistory(22);
tv.addToChannelsHistory(33);
tv.addToChannelsHistory(44);
tv.addToChannelsHistory(55);
}
}
然后我通过运行npm config set msvs_version 2013 --global
最后,我通过运行npm install node-gyp -g node-gyp
希望这有助于帮助我的人
答案 3 :(得分:0)
在不同的stackoverflow线程中没有答案对我有用。
我删除了缓存,删除了锁定文件,安装了另一个版本的Node ,更新了NPM ,等等,但是没有一个起作用。也许我的回答是题外话,但是如果您只是想立即完成工作,则可以使用 yarn :
之类的其他工具来安装所需的软件包。yarn add <package>
等同于
npm i --save <package>
例如,无法使用 NPM 将 SQLite3 和 Sequelize 安装在我的计算机上,而我可以通过 Yarn < / em>。