npm学习(二)之如何防止权限错误
如何防止权限错误
如果您在尝试全局安装包时看到EACCES错误,请阅读本章。如果更改安装npm的目录,通常可以避免此错误。要做到这一点,要么使用版本管理器重新安装npm(推荐)或手动更改npm的默认目录。
选项一:使用节点版本管理器重新安装
这是避免权限问题的最佳方法,在安装节点版本管理器之前,不需要删除当前版本的npm或node .js。
选项二:更改npm的默认目录
本节不适用于Microsoft Windows。本章将在不久的将来更新到Windows地址。
为了最小化权限错误的机会,可以将npm配置为使用不同的目录。在本例中,它将是主文件夹上的一个隐藏目录。
1、开始前备份你的电脑。
2、制作一个全局安装目录: mkdir ~ / .npm-global
3、配置npm使用新的目录路径: npm config set prefix '~/.npm-global'
4、打开或创建~/.profile文件并添加这一行: export PATH=~/.npm-global/bin:$PATH
5、回到命令行,更新系统变量: source ~/.profile
测试:不使用sudo全局下载包:npm install -g jshint
代替步骤2-4,你可以使用相应的ENV变量(例如,如果你不想修改~/.profile): NPM_CONFIG_PREFIX=~/.npm-global
提示:考虑npx
如果您使用的是npm 5.2或更高版本,请探索npx作为运行全局命令的另一种方法,特别是当您偶尔需要一个命令时。
npm学习(二)之如何防止权限错误的更多相关文章
- npm学习(一)之安装、更新以及管理npm版本
安装npm 安装前须知: npm是在Node中编写的,因此需要安装Node.js才能使用npm.可以通过Node.js网站安装npm,或者安装节点版本管理器NVM. 如果只是想开始探索npm,使用No ...
- NPM全局安装软件包时解决EACCES权限错误
NPM全局安装软件包时解决EACCES权限错误 Resolving EACCES permissions errors when installing packages globally npm WA ...
- npm学习(四)之如何安装全局包、更新全局安装的包、卸载全局安装的包
如何安装全局包 有两种方式用来安装 npm 包:本地安装和全局安装.选用哪种方式来安装,取决于你如何使用这个包. 如果你想将其作为一个命令行工具,那么你应该将其安装到全局.这种安装方式后可以让你在任何 ...
- 我的MYSQL学习心得(十三) 权限管理
我的MYSQL学习心得(十三) 权限管理 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...
- NPM 学习笔记整理
NPM 学习笔记整理 阅读 550,2017年06月04日 发布,来源:blog.ihoey.com 什么是 NPM npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ru ...
- Quartz学习--二 Hello Quartz! 和源码分析
Quartz学习--二 Hello Quartz! 和源码分析 三. Hello Quartz! 我会跟着 第一章 6.2 的图来 进行同步代码编写 简单入门示例: 创建一个新的java普通工程 ...
- SpringCloud学习(二):微服务入门实战项目搭建
一.开始使用Spring Cloud实战微服务 1.SpringCloud是什么? 云计算的解决方案?不是 SpringCloud是一个在SpringBoot的基础上构建的一个快速构建分布式系统的工具 ...
- DjangoRestFramework学习二之序列化组件、视图组件 serializer modelserializer
DjangoRestFramework学习二之序列化组件.视图组件 本节目录 一 序列化组件 二 视图组件 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组 ...
- SpringMVC入门学习(二)
SpringMVC入门学习(二) ssm框架 springMVC 在上一篇博客中,我简单介绍了一下SpringMVC的环境配置,和简单的使用,今天我们将进一步的学习下Springmvc的操作. mo ...
随机推荐
- JavaWeb_(request和response)用户登录注册模板_基础版
用户登录注册模板进阶版 传送门 用户登录注册模板基础版 登录:当用户登录成功时,跳转到personCenter.jsp,当用户登录失败时,跳转到login.jsp并给出提示 注册:当用户注册成功时,跳 ...
- python学习之路(4)
使用list和tuple Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >& ...
- HTML和CSS 入门系列(二):文字、表单、表格、浮动、定位、框架布局、SEO
上一篇:HTML和CSS 入门系列(一):超链接.选择器.颜色.盒模式.DIV布局.图片 一.文字 1.1 属性 1.2 字体样式:font-family 1.3 字体大小:font-size 1.4 ...
- ANR错误分析
链接1:https://www.cnblogs.com/xiyuan2016/p/6740623.html 链接2:https://www.jianshu.com/p/3959a601cea6
- 二、Smarty中的三种主要变量
1.从PHP中分配的变量 $smarty -> assign(); 从PHP分配给模板使用的变量:动态变量 2.从配置文件中读取的变量 $smarty配置文件中的内容不是PHP读取,而是就在sm ...
- vue动态构造下拉
在点击菜单的进入后台初始化方法 @RequestMapping("/init") public String init(@ModelAttribute("response ...
- iOS 的 Gif 渲染
关于gif的展示,有些项目中很少用到,所以有的人对于这方面了解不是很多 下面介绍几种展示gif的方法,希望大家可以用得上,有更好的方法欢迎评论区留言 一,展示本地的gif,使用的SDWebImage里 ...
- 在CentOS7上搭建Kubernetes
来源 中文教程 http://blog.51cto.com/devingeng/2096495?from=singlemessage 官方文档 https://kubernetes.io/docs/s ...
- 什么是web语义化,有什么好处
web语义化是指通过HTML标记表示页面包含的信息,包含了HTML标签的语义化和css命名的语义化.HTML语义化是指:通过使用包含语义的标签(如h1-h6)恰当地表示文档结构 CSS命名的语义化是指 ...
- [SQL]数据库常用语句
1.使用旧表创建新表 SELECT * INTO CC FROM AA ; (适用于版本SQL SERVER)