Tôi đã cố gắng nâng cấp phonegapqua npmkhi tôi bắt đầu gặp sự cố. Truyện dài ngắn, có hai node_modulesthư mục trên máy tính của tôi.
/usr/local/lib/node_modules
/usr/local/share/npm/lib/node_modules
Khi tôi chạy npm upgrade -g phonegap, có vẻ như npmcập nhật bản sao của gói nằm trong đó /usr/local/lib/node_modules. Tuy nhiên, nếu tôi which phonegapthấy rằng liên kết tượng trưng trỏ đến cài đặt cũ hơn tại /usr/local/share/npm/lib/node_modules.
Ngoài ra, khi tôi cố gắng cài đặt một gói độc lập chẳng hạn như express, các tệp được cài đặt trong /usr/local/lib/node_modulesthư mục, nhưng không có liên kết biểu tượng nào với tệp thực thi được tạo ở bất kỳ đâu trong của tôi $PATH.
Hai câu hỏi:
- Thư mục nào thích hợp cho các mô-đun nút trên Mac OS X?
Làm cách nào tôi có thể cấu hìnhnpmđể liên kết các tệp thực thi trong$PATHkhi nó cài đặt phần mềm?
Điểm thưởng: Cách cài đặt có nodeảnh hưởng đến cấu hình không? Có rất nhiều lựa chọn .
CHỈNH SỬA : Tôi đã phát hiện ra rằng các liên kết tượng trưng đang được tạo trong của tôi /usr/local/bin, nhưng của tôi .bash_profileđã được thiết lập /usr/local/share/npm/bintrước /usr/local/bintrong của tôi $PATH. Tôi lờ mờ nhớ rằng đã thêm đường dẫn đó vào hồ sơ của mình vào một thời điểm nào đó, nhưng tôi không chắc tại sao.
Vì vậy, câu hỏi bây giờ trở thành: làm thế nào tôi kết thúc với hai node_modulesthư mục khác nhau trên máy tính của mình và tại sao tôi muốn có của tôi node_modulestrong share/npm/libthư mục con thay vì ngay trong /usr/local/lib?