- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经使用 sudo npm install grunt
安装了 grunt
,但现在无法删除它。
我已经尝试过:
$ sudo npm uninstall grunt
但它给了我一个警告
:
npm WARN uninstall not installed in /home/kuba/projects/node_modules: "grunt-cli"
我还尝试过 rm
、remove
和 unlink
。和 -g
选项,但这些选项给出:
npm WARN uninstall not installed in /usr/lib/node_modules: "grunt"
但我仍然可以从命令行运行 grunt
。
编辑:
$ whereis grunt
grunt: /usr/local/bin/grunt
$ file /usr/local/bin/grunt
/usr/local/bin/grunt: symbolic link to `../lib/node_modules/grunt/bin/grunt'
$ ls /usr/local/lib/node_modules
grunt jshint
$ ls /usr/lib/node_modules
bower csslint devtools-terminal npm plato
为什么我有 2 个带有 npm
的目录?删除它们安全吗?
编者注:
这个问题是在 5 年前提出的,标题是如何卸载 npm 包。这是一个非常有用的问题,受到许多人的喜爱,他们找到了问题的解决方案,因此我将其从最近的编辑中改回,称为如何卸载 grunt 包,因为它需要相同的内容过程与任何其他 npm
包一样。
最佳答案
卸载npm
项目中的模块 node_modules
文件夹,运行:
npm uninstall <module> --save
请注意npm
应从包含 node_modules
的同一目录中卸载模块运行此命令时的文件夹。 --save
选项也会将其从您的 package.json
中删除
还可以通过从本地删除其目录来删除本地依赖项/模块安装 node_modules
文件夹。是的,删除依赖项是安全的。
卸载npm
全局安装的模块,运行:
npm uninstall -g <module>
从哪里运行此命令并不重要。
安装npm
module, run:(仅供引用)
npm install <module>
...或:
npm install
(如果项目根目录中有 package.json
文件)
...或:
npm install <module> --save-dev
(如果您想向依赖项添加最低版本)
关于 Grunt 的好消息:
grunt
2013 年 2 月 18 日之前稳定 ( the day grunt v0.4.x
was released ),您可能有较旧的 grunt
版本仍然存在于您的系统中。那是因为grunt
低于 0.4.x
的版本全局安装,这给升级/维护版本带来了很大的痛苦。 grunt
和grunt-cli
是两个不同的东西。
grunt
(不带“cli”)通常通过运行 devDependency
在项目级别安装(当在 package.json
中列为 npm install
时) 。这也称为本地安装。grunt-cli
是 grunt
本地版本的底层基础在不同的项目/文件夹中运行。它可以在本地安装,但在全局安装一次时更有用。 grunt
仅在本地安装(通过运行 npm install grunt
)。
grunt-cli
最好全局安装(通过运行 npm install -g grunt-cli
)。 grunt-cli
官方npm
页still warns against安装grunt
(没有 cli)全局范围内。grunt-cli
的全局安装,运行npm uninstall -g grunt-cli
。 This issue上gruntjs的项目支持此过程。grunt
全局(通过运行 npm install -g grunt
)。关于 npm
和sudo
<强> sudo
与 npm
配合不佳。仅在必要时才使用它。以下是关于其使用优点和缺点的两段引用:
引用Isaac Z. Schlueter关于他的Introduction to npm文章:
I strongly encourage you not to do package management with sudo! Packages can run arbitrary scripts, which makes sudoing a package manager command as safe as a chainsaw haircut. Sure, it's fast and definitely going to cut through any obstacles, but you might actually want that obstacle to stay there.
I recommend doing this once instead:
sudo chown -R $USER /usr/local
That sets your user account as the owner of the /usr/local directory, so that you can just issue normal commands in there. Then you won't ever have to use sudo when you install node or issue npm commands.
It's much better this way. /usr/local is supposed to be the stuff you installed, after all.
Andrei Karpushonak 提到的另一个问题:
There are certain security concerns and functionality limitations regarding changing the ownership of /usr/local to the current user:
- if there is another user on the machine who could use global npm packages - do not change the ownership of /usr/local
- https://apple.stackexchange.com/questions/1393/are-my-permissions-for-usr-local-correct
- https://askubuntu.com/questions/261326/is-it-safe-to-chown-usr-local
Having said that, if you want to install global module without using sudo, I don't see any better solution (from pragmatic point of view) than mentioned. Security vs easy of use is very broad topic, and there is no easy answer for that - it just depends on your requirements.
关于gruntjs - 如何卸载npm包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22642655/
我正在使用npm v5.3.0。 现在,我想将npm更新到v5.4.1。要执行此操作,请在终端中键入以下内容: npm install -g npm 没有任何错误。但是,当我键入npm -v时,得到的
我已经使用 vue-cli 两个星期了,直到今天一切正常。我在本地建立这个项目。 https://drive.google.com/open?id=0BwGw1zyyKjW7S3RYWXRaX24tQ
有什么方法可以更改或重置全局 npm 注册表。 感谢您的帮助。 最佳答案 在终端中运行以下命令以恢复到默认注册表 npm config set registry https://registry.np
查看 npm 的 documentation , 'i' 是 'install' 的别名,是否有任何情况下最好使用完整的 'npm install'? 最佳答案 两者之间没有具体区别。这只是一个懒惰的
目前,每次将更改推送到 GIT 存储库时,我都会发布新版本的 NPM 包。我的大部分更改只是愚蠢的补丁。我使用 NPM 作为工具,在我的许多项目中启用版本控制和代码重用。经过一个月的工作,我已经完成了
我运行的时候总是报错 npm install 谁知道怎么解决 npm ERR! Darwin 13.0.0 npm ERR! argv "/usr/local/bin/node" "/usr/b
“npm uninstall packageName”删除包并更新 package.json 文件。 但是来自 npm 文档 - To remove a package from the depend
我的背景更熟悉 composer .我收到 gulp (等)进行构建过程和学习 node以及如何使用 npm我走的时候。 很奇怪(再次来自 composer 背景)composer.lock默认情况下
我看到的许多 npm 模块名称前面都添加了技术名称,例如 react-native 或 jquery 等。由于我们已经在 package.json 文件中提供了关键字,因此遵循此约定有什么好处。我问这
我检查了 connect-privkey-to-provider模块在依赖项中。但是,它一直在说 模块 'connect-privkey-to-provider' 是无关的 npm 和 找不到模块 '
我正在进行持续集成并发现了 npm ci命令。 我不知道在我的工作流程中使用此命令有什么优势。 速度更快吗?这会让测试变得更难吗?好吗? 最佳答案 来自the official documentati
我有一个要发布到 NPM 的包,其中还包含如下所示的演示目录: . +-- demo | +-- src | | +-- main.js | +-- package.json +--
如果我打开集成终端并运行 npm -v 它会起作用。 但是,如果我直接从 NPM SCRIPTS 运行它,它就不起作用。 评论中要求的更多详细信息 //由 Fogmeister 编辑 我也有这个问题,
我正在尝试安装 gulp,当我写 npm install 时我得到了这个问题: npm ERR! code 1 npm ERR! path D:\www\wegrow\node_modules\nod
这个问题已经有答案了: npm test --codecoverage doesn't generate report (3 个回答) 已关闭 4 年前。 当我执行npm test --code-co
我能够运行 npm start 和 npm run start 命令。我用过create-react-app创建我的应用程序。为了在 CSS 模块中进行配置更改,我想运行 npmject 但它会抛出错
我正在使用npm run script执行“构建”和“测试”等任务。 例如,我的 package.json 如下所示: { "name": "fulfillment-service", "ve
我第一次将 npm 模块添加到我的项目中(jshint、optimg、jpgo)。我注意到有些项目,当我做 npm 运行 [名称] ,给出“sh: [name]: command not found”
我已经在 Windows 上安装了 Ubuntu Bash。我已经有 nodejs和 npm在我的 Windows 机器上 C:\Program Files\nodejs .在 Windows 的 b
我正在尝试运行 npm install bitgo命令但在终端上出现以下错误, npm ERR! code EMFILE npm ERR! syscall spawn git npm ERR! pat
我是一名优秀的程序员,十分优秀!