如何使用node_modules中本地安装的软件包中的可执行文件?
如何在中使用模块的本地版本node.js
。例如,在我的应用中,我安装了coffee-script:
npm install coffee-script
这会将其安装在中./node_modules
,coffee命令在中./node_modules/.bin/coffee
。当我在项目的主文件夹中时,是否可以运行此命令?我想我正在寻找类似于bundle
exec捆扎机中的东西。基本上,我想指定一个咖啡脚本的版本,参与该项目的每个人都应该使用。
我知道我可以添加该-g
标志以在全球范围内安装它,这样咖啡在任何地方都可以正常工作,但是如果我想每个项目使用不同版本的咖啡怎么办?
回答:
:正如Seyeong Jeong在下面的答案中指出的那样,从npm 5.2.0开始,您可以使用npx [command]
,这更加方便。
:
推杆的问题
./node_modules/.bin
进入PATH是因为它仅在当前工作目录是项目目录结构的根目录(即的位置node_modules
)时才有效
与您的工作目录无关,您可以使用以下命令获取本地安装的二进制文件的路径:
npm bin
要执行coffee
独立于项目目录层次结构中本地位置的本地安装二进制文件,可以使用此bash构造
PATH=$(npm bin):$PATH coffee
我将其别名为npm-exec
alias npm-exec='PATH=$(npm bin):$PATH'
所以,现在我可以
npm-exec coffee
无论我在哪里,都可以运行正确的咖啡
$ pwd/Users/regular/project1
$ npm-exec which coffee
/Users/regular/project1/node_modules/.bin/coffee
$ cd lib/
$ npm-exec which coffee
/Users/regular/project1/node_modules/.bin/coffee
$ cd ~/project2
$ npm-exec which coffee
/Users/regular/project2/node_modules/.bin/coffee
以上是 如何使用node_modules中本地安装的软件包中的可执行文件? 的全部内容, 来源链接: utcz.com/qa/414184.html