获取错误,错误:npm安装后找不到模块“express”

我是新的两个节点的JS和expression,我刚刚在Windows 7中安装npm。

我使用全球标志安装了快递:

npm install -g express 

C:\Users\USER_NAME\AppData\Roaming\npm\node_modules\express成功安装了Express,并将C:\Users\USER_NAME\AppData\Roaming\npm到我的path中。

但是,在命令行中使用express并不成功。 任何以express开头的命令都会告诉我它找不到要执行的命令:

  'express' is not recognized as an internal or external command, operable program or batch file. 

查看安装文件夹,找不到可执行文件(.exe或.cmd)。 通过search过去的问题显示,node_modules文件夹(至less在过去的版本中)应该同时包含express文件夹(我有)和.bin文件夹,其中包含express.cmd 。 我似乎没有.bin文件夹。

npm --version给我1.4.3 。 Express版本看起来是3.0.0

我也尝试在本地安装它,我已经尝试运行npm cache clean并重新安装。 这两种方法都不会改变情况:node_modules文件夹中没有可执行文件。

我是否正确安装快递? 如果是这样,为什么不包含可执行文件?

我在Windows 8.1上遇到了同样的问题。 express.cmd没有创build,但我find了文本文件:

 C:\Users\you\AppData\Roaming\npm\node_modules\express\Readme.md 

它build议运行这个:

 npm install -g express-generator@3 

哪个会下载更多的东西。

之后,您可以在Windows命令提示符下使用express 。 它会在你的path(C:\ Users \ you \ AppData \ Roaming \ npm)

编辑:

express-generator@3现在更新为express-generator@4 ,所以用这个代替,

 npm install -g express-generator@4 

答案并不完整,因为如上所述,模块安装在C:\Users\you\AppData\Roaming\npm目录中,并且不能总是访问任何模块,而无需1)将其链接到当前项目或2)明确定义NODE_PATH系统variables,指向节点到系统中的正确位置。

第一种方法,

在安装模块(在我们的例子中express )之后,可以通过使用cmd转到当前项目目录并执行下面的命令将其链接到当前项目,

 npm link express 

如果连接成功,你会得到这样的消息,

D:\ Project \ node_modules \ express – > C:\ Users \ Sufiyan \ AppData \ Roaming \ npm \ node_modules \ express

(如果不以pipe理员权限运行cmd,则无法链接目录)

第二个选项是创build或更新NODE_PATH系统variables,将节点指向系统中的正确位置。 阅读这个细节。

还请阅读官方的Node.js文档,

http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation/

这就是你需要做的一切:

 C:\node> npm install -g express-generator 

你可以在这个详细的启动教程中find这个和更多。

要解决这个问题,你需要使用:

npm install -g express-generator @ 3

它已从上一个命令更新:

npm install -g express

请注意,由express –version命令返回的版本将是express-generator的版本,而不是express。

我有这个问题,似乎虽然我们使用-g它被忽略。

我只是将MyProject/source/vendor内容复制到C:\Users\username\AppData\Roaming\npm

在node_modules里只复制需要的文件夹(如:express,express-generator,bower,yo,gulp和应该在PATH中的包)。


这个问题真的困扰每个人(或Windows用户?),NPM程序员应该解决它!

以pipe理员身份运行cmd。 它解决了我的情况下的“明示”未发现问题

npm link express将链接express从任何目录到你的项目目录下的节点都是默认的,当你运行npm install express它会安装在C:\Users\****\AppData\Roaming\npm\node_modules\express ,所以你不必安装每一次安装在你的项目目录中的express和其他框架,而是可以指向你的节点,也就是你有你的应用程序的地方。