2016-06-27 14 views
26

Tôi nhận được cảnh báo bên dưới khi cài đặt cordova. Làm thế nào tôi có thể giải quyết nó?npm WARN không được chấp nhận [email protected]: Vui lòng cập nhật lên minimatch 3.0.2 hoặc cao hơn để tránh sự cố Do.1 của RegExp Do

enter image description here Xin vui lòng xem các hình ảnh để biết những gì đã xảy ra khi tôi chạy dưới lệnh:

cập nhật NPM [email protected]

NPM cập nhật -d

enter image description here

+0

có ai có thể giúp tôi không. –

+1

minimix: lệnh không tìm thấy –

+0

Nhận lỗi này: npm ERR! Vui lòng bao gồm tệp sau với bất kỳ yêu cầu hỗ trợ nào: npm ERR! /Users/test/npm-debug.log –

Trả lời

42

npm update -g [email protected] Đã giải quyết sự cố này cho m e, không có mồ hôi, cho tôi biết nếu nó không làm việc cho bạn. Nhìn vào ảnh chụp màn hình của bạn, điều này là 90% + có khả năng khắc phục nó, tôi nghĩ vậy.

Hình như [email protected] mà được liệt kê trong một vài gói cordova, có một sự phụ thuộc vào [email protected] trong đó có một sự phụ thuộc vào [email protected]

Đây là một ví dụ về lý do tại sao npm là trình quản lý gói của sự điên rồ vô hạn. Tôi vẫn thích JavaScript hiện đại, nhưng npm là nguy hiểm vì nó rất hữu ích, theo ý kiến ​​của tôi.

+2

Tôi đã cài đặt v6.2.2 Hiện tại từ [node.js] (https://nodejs.org/en/). Tôi đã thử chạy lệnh cập nhật mà bạn đã cung cấp nhưng nó không làm gì cả. –

+1

Các gói tôi đã đề cập là một phụ thuộc được mã hóa cứng được liệt kê trong một số gói cordova, nó không được gắn với cấu hình của Node hoặc npm, nó được liệt kê trong các gói cordova để bạn không có quyền kiểm soát nó. Tôi đã có thể cài đặt Cordova sau khi cập nhật minimatch trên toàn cầu, nhưng bạn phải có một vấn đề khác. Số lượng các trạng thái có thể có thể gây ra điều này là lố bịch. Hãy thử tạo một dự án mới với Cordova là phụ thuộc duy nhất, xem liệu nó có cài đặt hay không. "Không làm gì cả" phải có nghĩa là bản tóm tắt toàn cầu của bạn được cập nhật, hãy kiểm tra để xác nhận. Chúc may mắn! –

+0

Điều này không hoạt động trong trường hợp của tôi: $ npm update -g [email protected] $ sudo npm install -g cordova npm WARN không được chấp nhận [email protected]: Vui lòng cập nhật lên minimatch 3.0.2 hoặc cao hơn để tránh RegExp DoS issue /usr/local/bin/cordova ->/usr/local/lib/node_modules/cordova/bin/cordova /usr/local/lib └── [email protected] –

-1

chạy lệnh như sau:

  1. -> NPM cập nhật
  2. -> NPM cài đặt -g cordova

này làm việc cho tôi.

+0

đã cố gắng nhưng không hữu ích –

6

tôi đã thông báo này khi tôi đã cố gắng để cài đặt ember-cli và giải quyết bằng cách gõ lệnh sau:

npm install -g npm

Lệnh cơ bản sẽ cập nhật của bạn npm và hy vọng nó sẽ giải quyết vấn đề của bạn quá . :)

CẬP NHẬT:

Nhưng:

Note rằng vì nó đứng nếu có ai chạy NPM cài đặt từ một phiên bản vô tính của kho lưu trữ của bạn họ sẽ kết thúc với các phiên bản cũ của dễ bị tổn thương minimatch và sẽ thấy thông báo lỗi cảnh báo chúng về lỗ hổng bảo mật.

Vì vậy, bạn cần chạy lại lệnh trên.

+1

Thực ra câu trả lời khác đã không ' t giải quyết .. nhưng điều này đã làm –

28

Đây là những gì tôi đã làm để cập nhật minimatch

Sau một comment on this GitHub issue,

$ npm update minimatch 
$ npm -v 
2.10.1 
$ npm install -g [email protected] 
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js 
[email protected] /usr/local/lib/node_modules/npm 
$ npm install -g [email protected] 
/usr/local/lib 
└─┬ [email protected] 
    └─┬ [email protected] 
    ├── [email protected] 
    └── [email protected] 

$ npm -v 
3.10.5 
$npm view minimatch version 
3.0.2 
+3

câu trả lời của Jeremy đã không làm việc cho tôi, nhưng điều này đã làm.Có vẻ như tôi cần thêm "npm install -g npm @ 3" dòng trước khi cố gắng cập nhật minimatch – TVann

+6

'npm -v minimatch 'không hiển thị phiên bản minimatch nhưng phiên bản của npm bạn đang thực sự sử dụng. Bạn có thể thử' npm -v dslkjfhrslkfhjezfmlhj 'và bạn sẽ nhận được kết quả tương tự. Một cách dễ dàng để hiển thị gói đã cài đặt của bạn và phiên bản của chúng là lệnh này: 'npm list -g --depth = 0'. – n3wbie

+0

để hiển thị phiên bản sử dụng minimatch: 'npm view minimatch version' – Asimov

1

Chỉ cần gõ vào "NPM cài đặt [email protected] -g" (Không có dấu ngoặc kép).Điều đó sẽ làm enter image description here

1

Đây là những gì tôi đã làm:

$ npm install -g minimatch 

Sau khi tất cả mọi thứ được cài đặt này không có thông báo lỗi.

+0

Đây là giải pháp dễ nhất, chính xác nhất. – CrsCaballero

Các vấn đề liên quan