npm update不做任何事情

时间:2016-09-28 21:34:11

标签: node.js npm package.json

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

npm updatenpm 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

7 个答案:

答案 0 :(得分:40)

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范围。您可以查看here的全面的semver范围列表,但最常用的可能是~^

~表示次要版本将更新。因此,如果您拥有版本~1.2.1,则会更新为1.2.x,但不会更新为1.3.0

^会更新主要版本和次要版本,因此,如果您有^1.2.1,则会更新到任何1.x.x版本,但不会更新为2.0.0

答案 1 :(得分:4)

如果npm outdated显示了超出规定范围的软件包(例如重大更新),则npm update 不能用于更新软件包。

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

npm install [-g] <package>

答案 2 :(得分:3)

要更新,步骤如下:

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

  2. 接下来,运行 npm update,这会将所有软件包更新到最新的 可能 版本,如 package.json 中所定义。例如,如果 package.json 中的某个包具有 ^2.3.1 版本,则该包将不会更新到 2.xx 之后,并且如果包具有版本 ~5.3.2 那么它不会超过 5.3.x 更新。 (要了解语义版本控制,read this

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

    a) 您可以通过将软件包版本更改为您喜欢的最新值来手动更新 package.json 中的软件包版本。尽管这可能会奏效,但这是非常乏味且容易出错的。 所以我不推荐它。

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

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

答案 3 :(得分:0)

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

save-exact=true

如果是,则将其删除或将其设置为false。设置为true时,将出现以下行为:

  

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

.npmrc and save-exact

答案 4 :(得分:0)

当我刚接触Node.js时,我并不了解以下内容。我在分享是否有帮助。

npm版本:

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

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

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

软件包版本:

function f(text){
  return text.replace(
    /<\/strong>(([^<]|<(?!strong))+)<strong/gi, 
    function(fullmatch, middle){
      middle = middle.split(' ');
      if(middle.length > 5){
        return '<\/strong>' + 
        middle.slice(0,3).join(' ') +
        ' ... ' +
        middle.slice(-3).join(' ') +
        '<strong';
      }else{
        return fullmatch;
      }
    }
  );
}

let text = 'Lorem ipsum dolor sit amet, ' +
  'consectetur adipiscing elit, sed do ' +
  'eiusmod tempor incididunt ut labore et ' +
  'dolore magna aliqua.\n<strong class="ner" ' +
  'style="background-color: #2fbbab">nine ' +
  'months <small>datetime</small></strong>\n' +
  'Urna condimentum mattis \n<strong class="ner" ' +
  'style="background-color: #2fbbab">December ' +
  '20th <small>datetime</small></strong>\n' +
  'Euismod lacinia at quis risus sed vulputate ' +
  'odio ut\n<strong class="ner" style="background-color: ' +
  '#2fbbab">December 1st<small>datetime</small></strong>\n' +
  'Euismod lacinia at quis risus sed vulputate odio ut';
  
console.log(f(text))

答案 5 :(得分:0)

使用 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,上面的一个 liner 将为您完成所有这些

答案 6 :(得分:0)

您可以使用现有包强制更新所有包即使它破坏了语义版本控制

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

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

此软件包将更新 package.json 中的所有依赖项版本和以下安装命令。

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