npm 更新没有做任何事情

问题描述 投票:0回答:8

当我在 package.json 所在的应用程序文件夹中执行此代码时:

npm update
npm update --save-dev
它没有任何作用。

但是当我这样做时

npm outdated
显示了许多过时的软件包。

那么如何更新所有包?

OS: Win 10 x64
nodejs: 6.2.2
npm:3.10.7

package.json

{
  "name": "tgb-frontend",
  "version": "0.0.0",
  "license": "MIT",
  "angular-cli": {},
  "scripts": {
    "start": "ng serve",
    "lint": "tslint \"src/**/*.ts\"",
    "test": "ng test",
    "pree2e": "webdriver-manager update",
    "e2e": "protractor"
  },
  "private": true,
  "dependencies": {
    "@angular/common": "2.0.0",
    "@angular/compiler": "2.0.0",
    "@angular/core": "2.0.0",
    "@angular/forms": "2.0.0",
    "@angular/http": "2.0.0",
    "@angular/platform-browser": "2.0.0",
    "@angular/platform-browser-dynamic": "2.0.0",
    "@angular/router": "3.0.0",
    "core-js": "^2.4.1",
    "rxjs": "5.0.0-beta.12",
    "ts-helpers": "^1.1.1",
    "zone.js": "^0.6.23"
  },
  "devDependencies": {
    "@types/jasmine": "^2.2.30",
    "angular-cli": "1.0.0-beta.14",
    "codelyzer": "~0.0.26",
    "jasmine-core": "2.4.1",
    "jasmine-spec-reporter": "2.5.0",
    "karma": "1.2.0",
    "karma-chrome-launcher": "^2.0.0",
    "karma-cli": "^1.0.1",
    "karma-jasmine": "^1.0.2",
    "karma-remap-istanbul": "^0.2.1",
    "protractor": "4.0.5",
    "ts-node": "1.2.1",
    "tslint": "3.13.0",
    "typescript": "2.0.2"
  }
}

运行

npm update --dd
会产生以下提取输出:

npm verb headers   'x-timer': 'S1475099110.490813,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/protractor from cache
npm verb get saving protractor to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\protractor\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/zone.js
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"CEIBQS48U3970DBBLVY9BS6AW"',
npm verb headers   age: '128',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1222-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.490820,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/zone.js from cache
npm verb get saving zone.js to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\zone.js\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/karma-chrome-launcher
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"4F85C0FZBMRDOTDFPHJMQZBM8"',
npm verb headers   age: '59',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1231-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.492537,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/karma-chrome-launcher from cache
npm verb get saving karma-chrome-launcher to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\karma-chrome-launcher\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/karma-remap-istanbul
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"BYUZKVHQIHLVUT104GP509OFK"',
npm verb headers   age: '268',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1221-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.490957,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/karma-remap-istanbul from cache
npm verb get saving karma-remap-istanbul to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\karma-remap-istanbul\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/tslint
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"CWO8LZOC4DK34K142T9LWM1RX"',
npm verb headers   age: '10',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1248-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.490976,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/tslint from cache
npm verb get saving tslint to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\tslint\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/jasmine-spec-reporter
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"1TKJPMC6QAX7DTKI3RCPOWB33"',
npm verb headers   age: '59',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1235-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.496023,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/jasmine-spec-reporter from cache
npm verb get saving jasmine-spec-reporter to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\jasmine-spec-reporter\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/typescript
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"BTWWBQ9R8BXMY0349REWK133W"',
npm verb headers   age: '252',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1227-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '9',
npm verb headers   'x-timer': 'S1475099110.501994,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/typescript from cache
npm verb get saving typescript to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\typescript\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/karma-jasmine
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"36V4PLV1VKGDW8C5GXL8K8BVH"',
npm verb headers   age: '211',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1240-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.498463,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/karma-jasmine from cache
npm verb get saving karma-jasmine to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\karma-jasmine\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 304 https://registry.npmjs.org/karma
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"9B0FRZQ5V9W9AIXWF98UVSM6C"',
npm verb headers   age: '97',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1224-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.501606,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/karma from cache
npm verb get saving karma to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\karma\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir already in flight; waiting
npm http 200 https://registry.npmjs.org/karma-cli
npm verb headers { server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)',
npm verb headers   etag: '"BZP1VT7P2AOLYBNMO7N10ESCI"',
npm verb headers   'content-type': 'application/json',
npm verb headers   'content-encoding': 'gzip',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   'content-length': '2902',
npm verb headers   'accept-ranges': 'bytes',
npm verb headers   date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   age: '56',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1233-FRA',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1475099110.496210,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb get saving karma-cli to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\karma-cli\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fforms
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"EAEQ3H227F67DKL54RON412OW"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1238-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.485421,VS0,VE259',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fforms from cache
npm verb get saving @angular/forms to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fforms\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fplatform-browser-dynamic
                                                                                            npm verb headers { 'cache-control': 'max-age=0',
npm verb headers   'accept-ranges': 'bytes',
npm verb headers   date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1250-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.475204,VS0,VE419',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fplatform-browser-dynamic from cache
npm verb get saving @angular/platform-browser-dynamic to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fplatform-browser-dynamic\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fplatform-browser
                                                                                                          npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
                                                                                                                              npm verb headers   etag: '"6KULKVAP2JLLHXUR9G1MKEWBH"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1247-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.481265,VS0,VE428',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fplatform-browser from cache
npm verb get saving @angular/platform-browser to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fplatform-browser\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
                                                                       [..................] | : verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in npm http 304 https://registry.npmjs.org/@angular%2frouter
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"E37EYJC1EI89JHFLMFG79P1B1"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1247-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.481239,VS0,VE452',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2frouter from cache
npm verb get saving @angular/router to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252frouter\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@types%2fjasmine
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"5970JWNJE5EMJ1LQCUJLDE51A"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1249-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.480305,VS0,VE717',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@types%2fjasmine from cache
npm verb get saving @types/jasmine to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40types_252fjasmine\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fcommon
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"5T3TIRLH7GIKTLAUE8ASZODQP"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1237-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.478583,VS0,VE741',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fcommon from cache
npm verb get saving @angular/common to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fcommon\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fcompiler
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"7SNBRHEXD0EH21E7G01GBSPZ0"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1232-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.485587,VS0,VE764',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fcompiler from cache
npm verb get saving @angular/compiler to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fcompiler\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fcore
npm verb headers { date: 'Wed, 28 Sep 2016 21:45:10 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=0',
npm verb headers   etag: '"4J1XWC967WZ1FEYDRY04JS2DN"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1245-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.482388,VS0,VE783',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fcore from cache
npm verb get saving @angular/core to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fcore\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm http 304 https://registry.npmjs.org/@angular%2fhttp
npm verb headers { 'cache-control': 'max-age=0',
npm verb headers   'accept-ranges': 'bytes',
npm verb headers   date: 'Wed, 28 Sep 2016 21:45:11 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-fra1230-FRA',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1475099110.484580,VS0,VE784',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/@angular%2fhttp from cache
npm verb get saving @angular/http to C:\Users\elisabeth\AppData\Roaming\npm-cache\registry.npmjs.org\_40angular_252fhttp\.cache.json
npm verb correctMkdir C:\Users\elisabeth\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm verb outdated not updating @angular/common because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/compiler because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/core because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/forms because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/http because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/platform-browser because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/platform-browser-dynamic because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating @angular/router because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating angular-cli because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating codelyzer because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating jasmine-core because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating jasmine-spec-reporter because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating karma because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating protractor because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating ts-node because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating tslint because it's currently at the maximum version that matches its specified semver range
npm verb outdated not updating typescript because it's currently at the maximum version that matches its specified semver range
npm verb exit [ 0, true ]
npm info ok
node.js npm package.json
8个回答
129
投票

npm update --dd
输出最后说明了原因:

...not updating @angular/common because it's currently at the maximum version that matches its specified semver range

看看这个具体的包,

angular/common
。您将其设置为
2.0.0
,这意味着 npm 将始终获取该特定版本。如果您希望包更新,则需要使用 semver 范围。您可以在此处查看 semver 范围的完整列表,但最常用的可能是
~
^

~
表示补丁版本将会更新。因此,如果您有版本
~1.2.1
,它将更新到任何
1.2.x
,但永远不会更新到
1.3.0

^
更新次要版本,因此如果您有
^1.2.1
,它将更新到任何
1.x.x
版本,但永远不会更新到
2.0.0


49
投票

要更新,步骤如下:

  1. 运行

    npm outdated
    将允许您检查所有需要更新的软件包。该列表将显示每个软件包的当前想要最新版本。

  2. 接下来,运行

    npm update
    ,这会将所有软件包更新为package.json中定义的最新的
    可能
    版本。例如,如果
    package.json
    中的某个包的版本为^2.3.1,那么该包将不会更新到2.x.x之后,如果某个包的版本为~5.3.2,那么它也不会被更新更新到5.3.x之后。 (要了解语义版本控制,阅读本文

  3. 但是,如果您想更新到最新版本,并且

    package.json
    中的软件包版本阻止您按照上述步骤 2 进行更新,该怎么办?那么有两种解决方案。

    a) 您可以通过将软件包版本更改为您希望的最新值来手动更新

    package.json
    中的软件包版本。尽管这可能有效,但这是非常乏味且容易出错的。 所以我不推荐。

    b) 您可以在

    package.json
    中自动更新软件包的版本。为此,您需要使用以下命令安装
    npm-check-updates
    软件包(我通常全局安装此软件包):
    npm i -g npm-check-updates
    。完成后,您必须运行
    ncu -u
    。这只会将
    package.json
    中的软件包版本更新到最新版本。可能会要求您运行
    npm install
    来安装可用的最新版本。 我推荐这个方法。

  4. 现在,在

    package.json
    中更新软件包的版本后,运行
    npm update
    ,您的软件包将更新到最新版本。


16
投票

如果

npm [-g] outdated
显示过时的软件包超出 semver 范围(例如重大更新),则 update
 命令
不能 用于更新这些软件包。

要安装最新版本,请明确指定软件包

npm install [-g] <package>
    

4
投票
在 bash 上使用一个衬垫将所有过时的软件包更新到最新版本

npm outdated | cut -d" " -f1 | tail -n +2 | sed 's/$/@latest/' | xargs npm i
如果您使用 

^

~
 或在您的版本之前,那么您 
cannot
 将使用 
npm update <package-name>
 获得该软件包的下一个主要版本。
您可以使用 
npm outdated
 检查过时的软件包,并为每个软件包运行 
npm install <package-name>@latest
,上面的一个班轮将为您完成所有这些工作


3
投票
当我刚接触 Node.js 时,我不知道以下内容。我正在分享如果它可以帮助你。

npm 版本:

npm --version

请注意,以下还会检查 npm 版本:

npm --version <packagename> // package name argument is simply ignored

套装版本:

npm list // at local directory to check local package versions npm list -g // to check global package versions
    

2
投票
还要检查的另一件事可能会影响您安装软件包的方式并最终导致此问题,那就是您的 .npmrc 文件。检查一下是否有这样一行:

save-exact=true

如果是,则将其删除或设置为 false。当它设置为 true 时,您会得到以下行为:

使用 --save、--save-dev 或 --save-Optional 保存到 package.json 的依赖项将配置精确的版本,而不是使用 npm 的默认 semver 范围运算符。

.npmrc 和保存精确


2
投票
您可以强制更新所有包

即使它破坏了语义版本控制使用现有包。

重要项目请谨慎使用,绝对避免在生产中使用。

我发现这个快捷方式对于个人项目很有用。

此软件包将更新

package.json

 中的所有依赖项版本以及以下安装命令来安装它们。

npx npm-check-updates -u && npm i


    


0
投票
对我来说,我一包含

--save

就看到它正在更新package.json文件。

© www.soinside.com 2019 - 2024. All rights reserved.