ng không được công nhận là một lệnh nội bộ hoặc bên ngoài


201

Chạy windows 7 Professional 32bit.

Tôi đã thử chạy npm install -g angular-clicả dưới bình thường hoặc quản trị viên. 2016-06-23_14h46_40

Tôi cũng đã thử thêm nó vào Biến số Enviorment dưới PATH : (C:\Users\Administrator\AppData\Roaming\npm\node_modules\angular-cli\bin\ng), cũng không thành công.
2016-06-23_14h56_48

Tôi đang làm gì sai?


6
Chắc chắn bạn muốn thư mục ( C:\Users\Administrator\AppData\Roaming\npm\node_modules\angular-cli\bin) trong %PATH%?
Biffen

Tôi không chắc. Tôi đã thử nó chỉ để xem nếu 'ng' hoạt động, nhưng nó không.
Cristian Muscalu

Bạn đã mở một dấu nhắc lệnh mới? Các biến môi trường sẽ không được truyền sang các biến. Hãy thử echo %PATH%để thấy rằng nó chính xác.
Biffen

2
Chà, kiểm tra xem %PATH%có chứa (đó là một danh sách được phân tách bằng dấu chấm phẩy) thư mục chứa ng.exe.
Biffen

2
tôi đã tìm thấy giải pháp cho vấn đề đó stackoverflow.com/a/46874999/7968316
Rixwan

Câu trả lời:


236

Đối với tôi nó hoạt động với:

npm run ng <command>

10
Bạn có biết lý do tại sao nó lại như vậy và làm thế nào chúng ta có thể thoát khỏi 'npm run'?
Pratik Gandhi

5
nhưng điều này không bỏ sót bất kỳ tham số bổ sung nào sau khi xây dựng
hakuna

Để chạy trực tiếp thông qua nglệnh, bạn có thể liên kết @angular/clivới npm bằng cách sử dụng npm link @angular/cli
Asad Shakeel

3
@PratikGandhi Điều này là do cmdchỉ có thể chạy các lệnh được chỉ định trong các biến môi trường (trong trường hợp này npm). Đường dẫn này được thêm vào khi bạn cài đặt nút trong hệ thống của mình trên toàn cầu. Khi bạn thêm đường dẫn đầy đủ C:\Users\<user>\AppData\Roaming\npm\node_modules\@angular\cli\bin\ngvào các biến môi trường và chạy lại cmd, nó sẽ chấp nhận ngnhư một lệnh. Ngoài ra, bạn cũng có thể sử dụng dấu nhắc lệnh Node.js để chạy các lệnh ng.
MM

218

Tôi đã giải quyết vấn đề này theo hình:

chạy trong cmd

 npm install -g @angular/cli

và sau đó

(mở trong Windows 10) Bảng điều khiển \ Tất cả các mục trong Bảng điều khiển \ Hệ thống hoặc theo hình

bước 1:

nhập mô tả hình ảnh ở đây

bước 2 :

nhập mô tả hình ảnh ở đây

bước 3:

nhập mô tả hình ảnh ở đây

bước 4:

nhập mô tả hình ảnh ở đây

bước 5:

nhập mô tả hình ảnh ở đây

Và cuối cùng, máy tính phải được khởi động lại.


bạn đã nhận được các bình luận Angular và NG (trong độ phân giải) sai vòng;)
Shaheen K

1
trong trường hợp của tôi, tôi chỉ cần thêm đường dẫn đến npm.
Kieran

41
Bạn không phải khởi động lại máy tính khi kết thúc, bạn chỉ cần khởi động lại dấu nhắc lệnh.
Aravindh Gopi

Hoặc bạn có thể đăng xuất ("đăng xuất" bằng ngôn ngữ win 10), sau đó đăng nhập lại. Điều đó sẽ "thiết lập lại" tất cả các biến môi trường của bạn. Nhưng đó là khoai tây nhỏ .... bên cạnh câu trả lời thực tế này. Upvote. Cảm ơn.
granadaCoder

C:\Users\<YOURUSER>\AppData\Roaming\npmkhông phải là đường dẫn góc mà là đường dẫn npm, vì vậy nếu bạn thêm đường dẫn này vào các biến môi trường, thì tất cả các gói npm bạn cài đặt với cờ -g sẽ có sẵn trên dòng lệnh của bạn (không chỉ ng).
PinguinoSod

113

Thêm C:\Users\DELL\AppData\Roaming\npmvào Biến hệ thống Pathlàm việc cho tôi. Vui lòng tìm đường dẫn tệp thích hợp của bạn đến 'npm'

Ngoài ra, kiểm tra xem bạn đã thêm angular-cli\binđường dẫn của mình vào biến đường dẫn chưa.


5
Cũng thử khởi động lại PC. Sau đó lệnh ng bắt đầu làm việc.
Mateusz Migała

1
Tra cứu đường dẫn cho tập tin "ng.cmd". cập nhật biến môi trường PATH với đường dẫn.
Jnana

4
Điều này hoạt động với tôi trên Windows 10, nhưng tôi đã thêm "% USERPROFILE% \ AppData \ Roaming \ npm" để bao quát nhiều người dùng tiềm năng lấy từ hồ sơ người dùng của riêng họ.
Tim McElwee

2
%AppData%\npmsẽ mở rộng sang cả hai giá trị của @TimMcElwee và @ sabari, và là bất khả tri của người dùng và máy.
ps2goat

việc thêm thư mục \ npm vào các biến đường dẫn đã cố định nó cho tôi
Muffazza

68

Tôi đang sử dụng WIN 10, chỉ cần tìm ra vấn đề này. Nhập mã dưới đây trong cmd:

cấu hình npm nhận tiền tố

sao chép và dán đường dẫn mà bạn nhận được từ đầu vào các biến môi trường máy tính của bạn -> hộp biến người dùng -> đường dẫn -> chỉnh sửa - C: \ Program Files \ nodejs \ node_global , đường dẫn của bạn có thể khác.

Nhấp vào Ok và mở lại cửa sổ cmd của bạn, nhập phiên bản ng , sau đó nó hoạt động! Chúc mừng!


Hoạt động như một lá bùa! Vỏ MySQL lấn át biến đường dẫn người dùng của tôi .. :(
Hamza Khanzada

39

Chỉ cần mở dấu nhắc lệnh của bạn (chạy như quản trị viên). Đảm bảo node --vlà 6,9,0 hoặc cao hơn và cao hơn 3,0,0 npm --vr.

Sau đó chạy lệnh sau:

npm install -g @angular/cli

Một khi góc được cài đặt. bạn có thể thấy một mục của cli góc trong đường dẫn

C:\Users\Dell\AppData\Roaming\npm\node_modules\@angular

Sau đó thử ng giúp. Nó sẽ làm việc.


27

1) Nhập lệnh dưới đây vào dấu nhắc lệnh

npm install -g @angular/cli

2) Đảm bảo rằng C: \ Users \ _username_ \ AppData \ Roaming \ npm đường dẫn này không bị ẩn .

3) Thêm C: \ Users \ _username_ \ AppData \ Roaming \ npm

C: \ Users \ _username_ \ AppData \ Roaming \ npm \ node_modules @ angular \ cli \ bin cho cả hai đường dẫn biến môi trường .

4) Mở dấu nhắc lệnh mới và gõ ng trợ giúp . Nó sẽ làm việc.


Tôi không thể thấy thư mục AppData cho đến khi tôi có quyền quản trị viên cho máy Windows 10 của mình và sau đó mở cửa sổ lệnh bằng cách nhấp vào Chạy với tư cách Quản trị viên.
Robert Stevens

18

Với một lệnh

npm install -g @angular/cli@latest

Nó hoạt động tốt, tôi có thể chạy lệnh ng bây giờ.


16

Tôi đã làm theo các bước dưới đây để giải quyết vấn đề này trong Windows 10 :

  1. Trước tiên hãy chắc chắn rằng bạn đã cài đặt Angular CLI. Bạn có thể sử dụng dưới đây để cài đặt tương tự.

cài đặt npm -g @ angular / cli @ mới nhất

  1. Đảm bảo rằng AppData hiển thị và điều hướng đến đường dẫn bên dưới.

C: \ Người dùng \ rkota \ AppData \ Chuyển vùng \ npm

Cùng một đường dẫn có thể được tìm thấy bằng cách chạy bên dưới quá:

cấu hình npm nhận tiền tố

  1. Thêm đường dẫn trên, tức là "C: \ Users \ rkota \ AppData \ Roaming \ npm" trong biến môi trường PATH và đảm bảo rằng nó đã được thêm bằng cách chạy đường dẫn trong dấu nhắc lệnh.
  2. Đóng dấu nhắc lệnh và bây giờ thử chạy bên dưới:

ng

bạn sẽ có thể xem phiên bản CLI.


14

Tôi đã giải quyết nó vài ngày trước, sau khi gặp vấn đề tương tự với các mô-đun toàn cầu khác, bằng cách thêm vào:

Bảng môi trường -> Biến hệ thống -> Đường dẫn:

C: \ Users \ Administrator \ AppData \ Roaming \ npm \ node_modules \ angular-cli \ bin; C: \ Chương trình tập tin \ MongoDB \ Server \ 3.2 \ bin

Lưu ý rằng nó không được có bất kỳ khoảng trắng nào sau đó;

Đó hóa ra là vấn đề của tôi.


Tra cứu đường dẫn cho tập tin ng.cmd. Cập nhật giá trị PATH biến môi trường với cùng đường dẫn. Khởi động lại bàn điều khiển dòng lệnh và bạn đã hoàn thành.
Jnana

3
Câu trả lời bên dưới "npm config get prefix" là cách tiếp cận đúng
Peter Morris

1
trừ khi bạn thấy ngtrong thư mục là ng.cmdhoặc Windows Command Scriptdưới cột Loại, nếu không thì ng trong này angular-cli\binkhông hoạt động.
Jeb50

câu trả lời này cần cập nhật, vì bây giờ đường dẫn trong CLI v7.0 + là C: \ Users \ UserName \ AppData \ Roaming \
npm

12

Thay vì sử dụng dấu nhắc lệnh dựng sẵn, hãy bắt đầu tốt hơn bằng cách sử dụng phiên bản dấu nhắc lệnh được cài đặt NodeJS. Sau đó, nó sẽ hoạt động hoàn hảo mà không có bất kỳ vấn đề.nhập mô tả hình ảnh ở đây


2
Chạy where ngtrong bảng điều khiển đó có thể giúp tìm ra những gì sai với đường dẫn. Điều đó đã làm cho tôi, ng đã được giải quyết trong AppData người dùng sai, do đó thực hiện một phiên bản xấu của cli.
Frederik.L

10

thực hiện các dòng sau để giải quyết vấn đề cho cả phiên bản ng không tìm thấy và không xác định của ng

npm gỡ cài đặt -g angular-cli

gỡ cài đặt npm --save-dev angular-cli

bộ nhớ cache npm

cài đặt npm -g @ angular / cli @ mới nhất


9

Nếu bạn gặp lỗi ngay cả sau khi làm theo bước trên. sau đó thử bên dưới

Vì nó là một tập lệnh nút. Tôi đang sử dụng tùy chọn dưới đây để tạo như bây giờ.

nút C: \ Users \ Administrator \ AppData \ Roaming \ npm \ node_modules \ angular-cli \ bin \ ng phiên bản

Có thể là liên kết tượng trưng được yêu cầu. Không nghiên cứu thêm.

Nghiên cứu thêm: Đặt đường dẫn là:% PATH%; C: \ Users \ Administrator \ AppData \ Roaming \ npm;

Trong Windows, tệp npm.cmd nằm trong đường dẫn trên. Nếu biến Môi trường ở trên được đặt, bạn có thể thực hiện dưới dạng phiên bản ng init


7
  1. Mở cmd và gõ npm install -g @angular/cli

  2. Trong các biến môi trường, thêm vào biến người dùng hoặc biến hệ thống "Đường dẫn" value =C:\Users\your-user\.npm-packages\node_modules\.bin

  3. Trong cmd: c:\>cd your-new-project-path

  4. ...\project-path\> ng new my-app

    hoặc là ng all-ng-commands


5

đóng cmd và mở lại với quyền quản trị hoặc khởi động lại hệ thống của bạn.


5

Tôi gặp vấn đề tương tự khi tôi cố gắng cài đặt cli góc với cục bộ bằng lệnh

npm install @angular/cli@latest

Sau đó, tôi gặp vấn đề tương tự C: \ Users \ vi1kumar \ Desktop \ tus \ ANGULAR \ AngularForms> ng -v 'ng' không được nhận dạng như một lệnh nội bộ hoặc bên ngoài, chương trình có thể hoạt động hoặc tệp bó

Hơn tôi đã cố gắng cài đặt nó trên toàn cầu

npm install -g @angular/cli@latest

Trong trường hợp này nó hoạt động tôi đã tự hỏi rằng nó không thể cài đặt cli trên toàn cầu?

Sau khi thực hiện một số nghiên cứu tôi thấy bài viết này rất hữu ích hy vọng nó sẽ giúp ai đó đối mặt với vấn đề tương tự

Làm việc với nhiều phiên bản của Angular CLI


4

Cái này gần như làm việc với tôi, nhưng tôi phải sử dụng:% USERPROFILE% \ AppData \ Roaming \ npm. Trong biến môi trường ... / Biến hệ thống / Đường dẫn

Sau đó, khi tôi thực hiện CMD: "ng -v" tôi đã nhận được phản hồi chính xác cho cli góc.


4

npm install -g @angular/cli đã giúp tôi thay vì npm install @angular/cli


4

1- Cài đặt

$ npm install -g @angular/cli

2- Hãy chắc chắn nơi bạn ng.cmdcó mặt.

nhập mô tả hình ảnh ở đây

3- Sau đó thêm đường dẫn này vào các biến.

nhập mô tả hình ảnh ở đây


3

Tôi gặp vấn đề tương tự trên Windows 7, 64 bit chạy với npm v3.10.8.

  1. Tôi đã thêm đường dẫn như được đề xuất: (C: \ Users ..... (tên người dùng của bạn) \ AppData \ Roaming \ npm \ node_modules \ angular-cli \ bin \ ng) và gỡ cài đặt angular-cli.
  2. Sau này, tôi đã xóa bộ đệm npm bằng cách được npm cache cleannhắc ở đây https://bloss.msdn.microsoft.com/matt-harrington/2012/02/23/how-to-fix-node-js-npm- allow-probols / . Điều này đảm bảo không có thức ăn thừa.
  3. Cài đặt lại angular-cli với npm install -g angular-clivà voila.

    Hy vọng rằng có thể hữu ích!

3

Tôi đã gặp vấn đề tương tự khi thử với cú pháp "ng new" và giải quyết điều đó chỉ bằng cách cập nhật phiên bản nút hiện tại từ 5.xx lên 8.xx Sau khi cập nhật thành công nút, cú pháp hoạt động hoàn hảo với tôi. Vui lòng cập nhật phiên bản hiện có của nút. Vì nó được đề cập rõ ràng trong tài liệu góc mà các lệnh này yêu cầu phiên bản nút> = 6.9.x. Để tham khảo, vui lòng kiểm tra https://angular.io/guide/quickstart . Nó ghi rõ "Xác minh rằng bạn đang chạy ít nhất nút 6,9.x và npm 3.xx bằng cách chạy nút -v và npm -v trong cửa sổ thiết bị đầu cuối / bảng điều khiển. Phiên bản cũ hơn tạo ra lỗi, nhưng phiên bản mới hơn vẫn ổn".


3

Tôi gặp vấn đề tương tự trên x86, windows 7;

  • gỡ cài đặt @ angular / cli
  • cài đặt lại @ angular / cli
  • kiểm tra và xác minh các biến môi trường (không có vấn đề ở đó) ...
  • Vẫn còn vấn đề:

Giải pháp là tệp .npmrc tại C: \ Users {USERNAME} ... thay đổi tiền tố để nó đọc "tiền tố = $ {APPDATA} \ npm" ... Nhờ trang web này giúp giải quyết


3

Tôi đã giải quyết bằng cách thêm -% AppData% \ npm \ node_modules @ angular \ cli \ bin \ path vào đường dẫn biến môi trường của tôi


2

Trong trường hợp của tôi, tôi đã làm dưới đây các bước.

Tất cả các chương trình -> Node JS-> Nhấp chuột phải vào Dấu nhắc lệnh của Node.js và chọn các thuộc tính và từ chuỗi Target ở bản sao cuối bên dưới

/k "C:\Program Files\nodejs\nodevars.bat"

Tôi đã khởi chạy Visual Studio Code và mở tập tin bên dưới

C:\Users\gochinta\AppData\Roaming\Code\User\settings.json và đưa ra dưới đây

// Place your settings in this file to overwrite the default settings
{
  "terminal.integrated.shellArgs.windows": 
  ["/k", "C:\\Program Files\\nodejs\\nodevars.bat"]

}

Bây giờ tôi đã gõ ng -vvào cửa sổ Visual Studio Code Terminal và nó đã hoạt động.


2

Tôi đang đối mặt với vấn đề tương tự và nó được giải quyết. Cuối cùng, tôi cài đặt nút và CLI bằng hồ sơ người dùng khác và bây giờ tôi đang chạy lệnh ng từ người dùng khác đăng nhập. Vì nút và cli được cài đặt sử dụng nút đăng nhập người dùng khác không tìm thấy gì trên C:\Users\&lt;user name&gt;\AppData\Roamingđường dẫn này và đó là lý do tại sao tôi gặp lỗi này.

Tôi chạy npm install -g @angular/clilệnh và khởi động lại máy của tôi. Mọi thứ đều hoạt động tốt.


2

Đôi khi trong tương lai. Áp dụng cho máy Windows 8.1. Chạy các lệnh sau

npm install -g @angular/cli

Đăng xuất hoặc khởi động lại máy của bạn.

Điều này sẽ thêm đường dẫn env cần thiết, thay vì thực hiện thủ công.


2

Tôi cũng đã thử chơi với cmd bằng cách đặt đường dẫn biến môi trường & vân vân, nhưng câu trả lời đơn giản là sử dụng dấu nhắc lệnh của nodejs.

Vì vậy, bạn không cần phải thiết lập đường dẫn biến môi trường hoặc bất cứ điều gì. Khi bạn bỏ qua các nútj, nó sẽ đưa ra dấu nhắc lệnh, bằng cách sử dụng lệnh "ng" mà bạn không có bất kỳ cài đặt nào.


2

Vì câu hỏi này vẫn được hỏi nhiều lần nên một năm sau tôi cũng sẽ đăng câu trả lời của mình ở đây.

Manh mối (chỉ trên Windows) là sắp xếp các mục trong biến đường dẫn bên phải.

Như wiki NPM nói với chúng ta :

Vì trình cài đặt đặt C: \ Program Files (x86) \ nodejs trước C: \ Users \\ AppData \ Roaming \ npm trên PATH của bạn, nên nó sẽ luôn sử dụng phiên bản npm được cài đặt với nút thay vì phiên bản npm bạn đã cài đặt bằng npm -g install npm@<version>.

Vì vậy, biến đường dẫn của bạn sẽ trông giống như:

…;C:\<path-to-node-installation>;%appdata%\npm;…

Bây giờ bạn có hai khả năng:

  1. Hoán đổi hai mục để nó trông giống như
…;%appdata%\npm;C:\<path-to-node-installation>;…

Điều này sẽ tải phiên bản npm được cài đặt với npm (chứ không phải với nút) và với phiên bản Angular CLI đã cài đặt.

  1. Nếu bạn (vì bất kỳ lý do gì) muốn sử dụng phiên bản npm kèm theo nút, hãy thêm đường dẫn trực tiếp vào phiên bản Angualr CLI toàn cầu của bạn. Sau đó, biến đường dẫn của bạn sẽ trông như thế này: …;C:\Users\<username>\AppData\Roaming\npm\node_modules\@angular\cli;C:\<path-to-node-installation>;%appdata%\npm;… hoặc …;%appdata%\npm\node_modules\@angular\cli;C:\<path-to-node-installation>;%appdata%\npm;… cho dạng ngắn.

Điều này làm việc cho tôi từ một thời gian bây giờ.


1

Tôi gặp vấn đề tương tự về Visual Studio Code khi không thể chạy bất kỳ lệnh ng nào trong nó được xây dựng trong thiết bị đầu cuối.

Tôi đã thêm% AppData% \ npm vào đường dẫn trong Windows 10 và không phải khởi động lại, chỉ cần đóng và mở lại Mã VS và không thấy nó.


cùng một vấn đề tôi đặt đường dẫn mới AppData\Roaming\npm\node_modules\@angular\cli\bin\ngvà nó hoạt động tốt ngay bây giờ
Abdallah Abdillah

1

Cài đặt nodejs phiên bản x32 thay vì phiên bản x64 (ngay cả trên máy windows 64 bit).


1

Đối với tôi, có điều gì đó không ổn trong biến môi trường PATH. Tôi đã xóa tất cả các đường dẫn liên quan đến npm và thêm vào lúc bắt đầu PATH thư mục này:

c:\Users\<your-user-name>\AppData\Roaming\npm\

Hãy chắc chắn rằng bạn có ;giữa các đường dẫn.


Đây là một cái đúng, vì cả Win7 & 10 đều có ng. tập tin cmd ở đây.
Jeb50
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.