如何在中使用模块的本地版本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]
,这更加方便。
5.2.0之前的版本的旧答案 :
推杆的问题
./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
问题内容: 这是问题所在 我有一个require.txt看起来像: 我有一个本地存档目录,其中包含所有软件包和其他软件包。 我创建了一个新的virtualenv 激活它后,我尝试根据本地存档目录中的requirements.txt安装软件包。 我得到一些输出,似乎表明安装正常 但是后来检查发现没有正确安装该软件包。我无法导入软件包,但在virtualenv的site-packages目录中找不到任
如何配置设置。py,这样它就不会试图覆盖已经存在的脚本了?或者,如果编写脚本失败,至少完成包安装的其余部分。我正在使用设置工具进行设置。皮耶。设置的相关部分。这是什么 我的setup.py有版本化脚本(脚本名称中包含python版本)和未版本化脚本。在OS X上,我使用2.7版本的系统python,这需要超级用户权限来运行pip(sudo pip...),这导致脚本安装在具有根所有权的下。然后,当
问题内容: 我是一个有点新的和一般的。 我已经在服务器以及本地开发环境上设置了virtualenv。 在服务器上,程序包运行良好。 但是,在我的本地计算机上似乎根本无法正常工作。 我通常只是像这样在virtual-env中安装它: 不过,这会获得最新版本,这是第一次导致使用最新版本的问题。 所以我像这样卸载了版本5 alpha: 但是现在我不知道如何再次获得工作版本0.4.0 Beta。我试过了,
问题内容: 我正在尝试使用Composer安装软件包的特定版本。我尝试过,但是他们正在安装软件包的最新版本。如果我想要旧版本怎么办? 问题答案: 例如:
问题内容: 大家好,菜鸟Java问题。 我有一个Java项目,并且想在可执行jar中包含一个文本文件。现在,该文本文件位于默认程序包中。 InputFlatFile currentFile =新的InputFlatFile(“ src / theFile.txt”); 正如您使用src所看到的那样,我使用该行抓取文件。但是,这不适用于可执行jar。 有人可以让我知道如何将文件保存在可执行jar中,
问题内容: 我正在使用Mac OS X Yosemite版本10.10.3。 我在http://johnlaudun.org/20150512-installing-and-setting-pip-with- macports/中 使用macport安装了python2.7和pip 我可以成功安装软件包并将其导入我的python环境和python脚本中。但是,找不到与可以从终端中的命令行调用的软件