gpt4 book ai didi

node.js - npm 包在本地安装时不可用

转载 作者:搜寻专家 更新时间:2023-11-01 00:11:01 24 4
gpt4 key购买 nike

我在一个网络应用程序上使用 npm,我在使用一些需要终端命令运行的包时发现了一个问题,比如 nodemonconcurrently

我是通过

安装的
sudo npm install --save-dev nodemon

当我尝试通过以下方式使用它时:

nodemon ./server.js

我得到一个错误

nodemon command not found

和我同时使用时一样

我也试过

sudo npm install --save nodemon 

它不起作用。

只有全局安装才有效

sudo npm install -g nodemon

为什么我在本地安装时不能使用?

注意:我可以在node_modules/.bin

找到可执行文件

但是下面的效果不太好

node_modules/.bin/nodemon ./server.js

最佳答案

全局包可以直接启动,因为它们默认保存在您的PATH目录中。如果您将包保存在 local 上,您可以在 node_modules/.bin/ 上看到它,如您所提到的。因此,如果要在 locally 安装的情况下运行可执行包,有两种方法可以实现您想要的:

  • 您可以通过终端以 ./node_modules/.bin/nodemon yourscript.js 的形式运行它
  • 或者通过 package.json 文件中的 npm scripts,您可以这样做:

    {
    "scripts": {
    "nodemon": "nodemon yourscript.js"
    }
    }

    并执行npm run nodemon

第二种方法适用于全局或本地安装的包。

我更喜欢在本地安装包,这样我的其他应用就不会受到影响,尤其是当我为每个项目使用不同的包版本时。

更新

关于 npm@5.2.0之后,它带有一个名为 npx 的二进制文件.因此,您可以通过 npx [package] 在终端上运行特定的包,它会执行您的本地或全局 npm 包。在您的情况下,它应该类似于 npx nodemon server.js

关于node.js - npm 包在本地安装时不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43571466/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com