Tên trình thông dịch NodeJS ( node
) trên Ubuntu đã được đổi tên thành nodejs
do xung đột tên với gói khác. Đây là những gì đã đọc. Debian nói:
Tên ngược dòng cho lệnh trình thông dịch Node.js là "nút". Trong Debian, lệnh phiên dịch đã được thay đổi thành "nodejs".
Điều này được thực hiện để ngăn xung đột không gian tên: các lệnh khác sử dụng cùng tên trong dòng ngược của chúng, chẳng hạn như nút ax25 từ gói "nút".
Các kịch bản gọi Node.js là lệnh shell phải được thay đổi thành thay vào đó sử dụng lệnh "nodejs".
Tuy nhiên, bằng cách sử dụng nodejs, cài đặt các gói bằng cách sử dụng npm
. Cài đặt gói không thành công với lỗi sau:
sh: 1: node: not found npm WARN This failure might be due to the use of legacy binary "node" npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian
Làm cách nào để npm hiểu rằng nodejs đã được cài đặt trên hệ thống nhưng tên trình thông dịch thì khác?
ln -s nodejs node
vào/usr/bin
. Đó là loại hack mặc dù.