【问题标题】:npm {package} --save-dev not running at the command linenpm {package} --save-dev 不在命令行运行
【发布时间】:2017-06-19 11:24:11
【问题描述】:

我试过跑步

$npm install mocha --save-dev 

然后

$mocha

结果是

$-bash: mocha: command not found

如果全局安装它可以工作,但如果我只想在这个项目上使用包版本怎么办

有没有办法让它在不全局安装的情况下工作?

我使用的是 mac 10.11 el capitan

【问题讨论】:

  • 尝试更改参数顺序...试试这个:npm install --save-dev mocha
  • 我试过没用,我什至尝试删除 node_modules 文件夹
  • 答案建议将其安装为全局或使用 npm test .. 有没有办法在没有它的情况下工作?
  • @Crimeira,它从未可用过。视频编辑魔法,她忘了解释她在全球安装了 mocha。在 cmets 中也有人抱怨:npm install mocha --save-dev 不会给你命令行,npm install mocha -g 会。

标签: node.js npm


【解决方案1】:

可以使用npx命令运行本地依赖

试试命令:

 npx mocha

【讨论】:

    【解决方案2】:

    由于你还没有全局安装 mocha,你必须将终端指向你的包的本地目录

    改为运行此命令:

    ./node_modules/.bin/mocha
    

    这将运行本地安装的mocha 包。

    【讨论】:

      【解决方案3】:

      要使用从 NPM 包安装的命令,您必须全局安装它。试试:

      $ npm i -g mocha
      

      如果你不想全局安装,那么你可以使用本地 mocha 命令:

      $ <app>/node_modules/.bin/mocha
      

      【讨论】:

        【解决方案4】:
        $ cd project_directory
        

        如果你已经在 package.json 文件中有依赖 -> 做

        $ npm install
        
        $ ./node_modules/.bin/<module-name> -V // to get the version
        $ ./node_modules/.bin/<module-name> <action> // to use that module
        
        

        否则,如果要安装新模块,请先执行 ->

        $ npm install <module-name> --save-dev
        

        然后使用命令获取版本并使用模块。通过这种方式,您将能够为特定项目设置和使用特定的 node_modules,这是一种很好的做法,并使您的项目易于共享。 要全局安装模块,请运行 ->

        $ npm install -g <module-name>
        

        或具有 sudo 权限 ->

        $ sudo npm install -g <module-name>
        

        我希望这会有所帮助:) :)

        【讨论】:

          猜你喜欢
          • 2020-11-27
          • 1970-01-01
          • 2017-12-28
          • 2022-08-07
          • 2013-10-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多