npm {package} --save-dev没有在命令行运行

时间:2017-02-02 11:44:11

标签: node.js npm

我试过了

$npm install mocha --save-dev 

然后

$mocha

结果是

$-bash: mocha: command not found

如果全局安装它可以工作但是如果我只想在这个项目中使用包版本

有没有办法让它无需在全球范围内安装呢?

我在Mac 10.11 el capitan上

4 个答案:

答案 0 :(得分:2)

由于尚未全局安装Mocha,因此必须将终端指向软件包的本地目录

改为运行此命令:

./node_modules/.bin/mocha

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

答案 1 :(得分:1)

您可以使用int findFirstDuplicateFrequencyV2(int[] frequencyChanges) pure { import std.algorithm.iteration : each; import std.range : cycle; import std.typecons : Yes, No; int[int] alreadySeen = [0:1]; int frequency = 0; frequencyChanges.cycle.each!((change) { frequency += change; if (frequency in alreadySeen) { return No.each; } alreadySeen[frequency] = 1; return Yes.each; }); return frequency; } unittest { import std.conv : to; int answer = 0; answer = findFirstDuplicateFrequencyV2([1, -2, 3, 1]); assert(answer == 2, "Got: " ~ to!string(answer)); answer = findFirstDuplicateFrequencyV2([1, -1]); assert(answer == 0, "Got: " ~ to!string(answer)); answer = findFirstDuplicateFrequencyV2([3, 3, 4, -2, -4]); assert(answer == 10, "Got: " ~ to!string(answer)); answer = findFirstDuplicateFrequencyV2([-6, 3, 8, 5, -6]); assert(answer == 5, "Got: " ~ to!string(answer)); answer = findFirstDuplicateFrequencyV2([7, 7, -2, -7, -4]); assert(answer == 14, "Got: " ~ to!string(answer)); } 命令来运行本地依赖项

尝试命令:

npx

答案 2 :(得分:0)

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

$ npm i -g mocha

如果您不想在全球范围内安装它,则可以从以下位置使用本地mocha命令:

$ <app>/node_modules/.bin/mocha

答案 3 :(得分:0)

$ 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>

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