【问题标题】:I require Express 3.x for my project but after installing I keep getting ' express --version 1.4.28'我的项目需要 Express 3.x,但安装后我不断收到“express --version 1.4.28”
【发布时间】:2015-04-04 04:01:13
【问题描述】:

我尝试了很多东西。卸载 npm 和 express。 关注此主题:Node.js npm install express error fetch failed
有人可以解释一下我没有做错什么。
我知道这很简单,我已经在其他情况下解决了这个问题,但这不会解决。

package.json
  "dependencies": {
    "bcrypt-nodejs": "~0.0.3",
    "consolidate": "~0.9.1",
    "express": ">=3.2.6",
    "mongodb": "~1.4.34",
etc.

如果我执行“npm install”提示,我认为它会使用依赖项列表中列出的版本,但它安装了 express 4.0。见下文。

> npm install

不应该安装依赖列表中的版本吗?

Express 4.0;它与我的课程不兼容。 4.x 是此时的默认值。

>npm install express
npm express --version
4.0

>rm -rf express
>which express
(returns nothing)

>npm install express@3.2.6


>npm express --version
1.4.28

我认为 1.4.28 是 npm 本身的版本。
请问这是怎么回事?

【问题讨论】:

    标签: node.js mongodb express npm version


    【解决方案1】:

    您是对的,您正在查看 npm 版本。要查看已安装软件包的版本,请使用

    npm ls 
    

    或仅用于快递

    npm ls express
    

    【讨论】:

    • 谢谢。这是输出。 macbookpro:blog myname$ npm ls express blog@0.0.0 /Users/mynamel/Desktop/week2/homework_2_3/hw2-3/hw2-3/blog └── express@3.2.6 但是为什么是'npm express --version ' 告诉我 npm 的版本 - '不是 express 的版本'。我不会执行 'npm npm --version' 来查看 npm 的版本吗?
    • 查看npm版本的命令是npm --version。当您键入 npm express --version 时,它不理解 express 命令,因此它只是回退到 npm --version。尝试使用 npm blahblahblah --version ,你会看到同样的事情。您可以使用 npm --help 查看完整的 npm 命令列表。 npm 命令是一个二进制文件,而不是一个节点模块,尽管它会调用全局安装的 npm 包(我知道这很混乱)。要查看全局安装的 npm 版本,您可以使用 npm -g ls npm
    • @dskh 再次感谢您。很好的说明!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-01
    • 2014-12-16
    • 2015-11-26
    相关资源
    最近更新 更多