WebStorm-错误:请指定npm包
Webstorm在尝试运行package.json中指定的命令时引发错误:WebStorm-错误:请指定npm包,npm,webstorm,Npm,Webstorm,Webstorm在尝试运行package.json中指定的命令时引发错误: "devDependencies": {}, "scripts": { "dev": "./node_modules/.bin/webpack-dev-server --content-base src --inline --hot", "test": "echo \"Error: no test specified\" && exit 1" },
"devDependencies": {},
"scripts": {
"dev": "./node_modules/.bin/webpack-dev-server --content-base src --inline --hot",
"test": "echo \"Error: no test specified\" && exit 1"
},
我在其他计算机(Linux/Windows)上使用过Webstorm脚本。在这一个(Linux)上,它似乎不是突然起作用的。过去天气很好。我刚刚升级了Webstorm。在CLI中,“dev”命令运行良好,这与Webstorm配置有关。这个
在Settings=>Languages&Frameworks=>NOde.js和NPM中,节点解释器被指定为/usr/bin/NOde,这是正确的路径。我还单击以启用Node.js核心库。
仍然在Webstorm的NPM窗口中,当我想要运行“dev”脚本时,它抛出上述错误。
该项目是一个react项目,如果这很重要的话
在过去,它运行良好。请告知
编辑:添加了一个屏幕截图-默认值
dev=>编辑“dev”设置:
从11.0.3升级到2016.1后,遇到了相同的问题。 不确定某些配置是否被错误复制,或者他们是否添加了一个新字段来指定npm包
sudo apt-get install npm nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
去
运行>编辑配置>默认值>npm
使用[…]按钮浏览以选择节点解释器
您应该找到Npm package字段,将其填充为指向节点/lib/NODE\u模块/Npm的路径
如果它不能立即工作,请重新启动WebStorm,以便将其考虑在内
在Windows上,我无法使用自定义的
Npm
安装来使用Npm包
配置设置来解决问题
通过
node.js安装标准npm
解决了WebStorm中的问题,而无需设置npm包
配置。在Ubuntu上,如果您通过apt
安装了npm/nodejs,请使用/usr/share/npm
文件夹安装npm包
sudo apt-get install npm nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
在Linux/Ubuntu中:
webstorm抛出此错误的原因之一是节点解释器的目录名错误(“运行>编辑配置>默认值>npm>节点解释器”)
在最近的节点安装中,默认的节点解释器目录是usr/bin/nodejs,而不是usr/bin/node
因此,将节点解释器从“usr/bin/node”更正为“usr/bin/nodejs”,效果很好。在Xubuntu和LinuxMint上,使用/usr/bin/lib/nodejs/npm
只是想添加一些参考。在我的机器中,它位于/usr/share/npm
中,所以只需用它填充该字段。尝试更改npm补丁号/usr/share/npm。
这对我很有用。我已通过更新最新版本的nodejs解决了此问题如果您像我一样使用节点版本管理器,它是一个包含bin文件夹的文件夹:
~/.nvm/versions/node/v8.9.1/lib/node_modules/npm
只需将Webstorm更新到2018.3即可。问题解决了在我的例子中,ubuntu 18.04+PHPSTORM有助于:
apt-get remove nodejs
apt-get remove npm
使用Ubuntu
如果您是从官方网站(而不是apt存储库)安装Node.JS,您可能会将安装文件夹放在/opt/Node-v10.13.0-linux-x64
(取决于您的偏好)
如果是这样,您应该修改WebStorm设置,如下所示:
按住Ctrl+Alt+S键以打开“设置”窗口
转到“语言和框架”选项卡并选择“Node.js&NPM”
在右边,
- 对于“节点解释器”字段,单击“
…
”,并在打开的窗口中单击“+
”按钮和“添加本地”。在下拉列表中选择/opt/node-v10.13.0-linux-x64/bin/node
,然后单击确定李>
- 现在,对于“Package manager”字段,单击它旁边的“…”,只需选择文件夹
/opt/node-v10.13.0-linux-x64/bin
,然后单击确定。正如已经指出的,因为NPMWebStorm不希望您提供npm二进制文件的完整路径,只提供该二进制文件所在的文件夹
单击应用
现在你应该准备好出发了
你好谢谢你的回复。请参见上面的屏幕截图。我错过什么了吗?重新启动WebStorm后,它似乎仍然不起作用。抱歉,不是“节点解释器”字段本身需要指向“npm”目录的路径。在它旁边,如果你点击“…”,你可能会发现一个“Npm包”字段,它是指向你的“Npm”目录的路径。“节点解释器”仍然需要指向节点可执行文件的路径。在我的回答中添加了一个屏幕截图,希望有帮助。@Anthonydrogon我如何找到到节点的路径?我只能看到Node.js二进制文件(哪个nodejs
)的路径。对于带有node6的ubuntu 16.04,npm package字段应该是/usr/lib/Node\u modules/npm cli/Node\u modules/npm
。您需要首先运行sudo npm install-g npm cli
。那么npm包的位置呢?对于那些在linux上使用nvm和最新intellij IDEs的用户:非常感谢^^^^^在Ubuntu 18.04上,我发现这是唯一有用的答案。我已安装了apt install npm nodejs
,但没有意识到节点解释器
字段需要指向二进制文件的路径,而包管理器
字段需要指向目录的路径。直到我按照您的建议尝试了/usr/share/npm
,PhpStorm才检测到npm
版本号。PhpStorm希望为npm
创建一个目录这一事实并不明显,因为在Ubuntu上,存在一个来自/usr/bin/npm->../share/npm/bin/npm cli.js
的符号链接。天真地,我认为PhpStorm需要/usr/bin/npm
。如果您通过apt安装,这是真的。非常感谢A。Muzakkip请提供您更新到的nodeJS版本。“最新版本”并不意味着很快就会与您的版本相同。