npm webpack:找不到命令

Posted

技术标签:

【中文标题】npm webpack:找不到命令【英文标题】:npm webpack: coomand not found 【发布时间】:2017-03-20 14:33:19 【问题描述】:

我在 linux 上运行这个命令:

sudo npm install -g webpack

我得到以下输出:

/home/igor/.npm-global/bin/webpack -> /home/igor/.npm-global/lib/node_modules/webpack/bin/webpack.js /home/igor/.npm-global/lib └── webpack@1.13.3

看起来完全合法,但是当我尝试使用时:

webpack -h

我明白了

webpack:找不到命令

如何让 webpack 在命令提示符下运行?

【问题讨论】:

您是如何安装 Node.js 的?告诉我们您的 Node 和 NPM 版本。 npm 版本 3.10.8 节点 6.8.1。猜猜,我下载了二进制文件,然后更新了 全局包通常安装在/usr/local/bin/而不是你的主页中。你改成~/.npmrc了吗? @goenning 不,我没有。顺便说一句,哪个节点显示 /usr/bin/node 如果你将/home/igor/.npm-global/bin/ 添加到你的 PATH 中,它可能适用于你安装的 webpack 和其他模块。但这很奇怪,它不是默认文件夹。 【参考方案1】:

尝试在您正在使用的路径上本地安装 webpack。

【讨论】:

【参考方案2】:

全局安装的 NPM 模块的默认目录是/usr/local,它将在bin 文件夹中安装模块二进制文件。 如果您回显您的 $PATH 环境变量,您会看到 /usr/local/bin 在您的路径中。这意味着当您运行类似webpack 的命令时,macOS 将尝试在此文件夹或 $PATH 上的任何其他文件夹中查找二进制文件。

在某些时候,您可能将其更改为~/.npm-global,这会将webpack 二进制文件安装到您的/home/igor/.npm-global/bin/ 中。由于这个文件夹不在你的 $PATH 中,macOS 没有找到它。您可以运行npm config get prefix 来确认这一点。

解决方案 1 是通过更改 ~/.profile 文件将其添加到您的路径中。只需将export PATH=~/.npm-global/bin:$PATH 附加到它并重新启动您的终端。

解决方案 2 是通过运行 npm config set prefix '/usr/local' 将默认文件夹改回 /usr/local。在这种情况下,您无需更改 PATH 变量。

【讨论】:

以上是关于npm webpack:找不到命令的主要内容,如果未能解决你的问题,请参考以下文章

npm 与 webpack 的链接 - 找不到模块

将常规 npm 包加载到 webpack/angular cli [找不到模块]

Webpack:移动webpack / react文件的位置后,npm start“找不到模块:错误:无法解析...”

关于webpack webpack-cli全局安装后找不到webpack命令的解决方案

从 npm 迁移到 Yarn 2 PnP:ts-loader 找不到 webpack

webpack里的.env文件找不到