繁体   English   中英

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

[英]Getting error, Error: Cannot find module ‘express’ after npm install

我是Node JS和express的新手,并且我刚刚在Windows 7中安装了npm。

我已经使用全局标志安装了express:

npm install -g express

这样就可以在C:\\Users\\USER_NAME\\AppData\\Roaming\\npm\\node_modules\\express成功安装express,并将C:\\Users\\USER_NAME\\AppData\\Roaming\\npm到我的路径中。

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

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

在安装文件夹中,我找不到可执行文件(.exe或.cmd)。 仔细查询过去的问题表明,node_modules文件夹(至少在过去的版本中)应同时包含一个express文件夹(我有)和一个.bin文件夹,其中包含express.cmd 我似乎没有.bin文件夹。

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

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

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

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

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

它建议运行以下命令:

npm install -g express-generator@3

它将下载更多的东西。

之后,您可以在Windows命令提示符下使用express 它将位于您的路径中(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系统变量,使您的节点指向系统中的正确位置。

第一种方法

安装(模块后express我们的情况),您可以通过使用CMD将当前项目目录及以下命令执行它链接到您当前的项目,

npm link express

如果成功链接,您将收到类似这样的消息,

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

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

第二个选项是创建或更新NODE_PATH系统变量,使您的节点指向系统中的正确位置。 阅读这个详细信息。

另请阅读有关此问题的官方Node.js文档,

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

这就是您需要做的所有事情:

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

这个详细的启动教程中,您可以找到更多内容。

要解决此问题,您需要使用:

npm install -g express-generator @ 3

它已从上一个命令更新:

npm install -g快递

请注意,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程序员应该解决它!

以管理员身份运行cmd。 它解决了我的情况下“表达”找不到的问题

npm link express可以将节点从任何目录链接到项目目录,默认情况下,当您运行npm install express ,它将安装在C:\\Users\\****\\AppData\\Roaming\\npm\\node_modules\\express ,因此,您不必每次都在项目目录中安装Express和其他安装所需的框架,而是可以指向您的节点,即您拥有应用程序的位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM