Không tìm thấy gulp cục bộ (Thử chạy: npm install gulp)


84

Tôi đã tạo một mô-đun ( webapp-module-storage) có các định nghĩa sau:

package.json

{
  "dependencies": {
    ...
  },
  "devDependencies": {
    "gulp": "^3.9.1",
    ...
  },
  "name": "webapp-module-storage",
  "scripts": {
    "postinstall": "gulp build",
    "test": "gulp test"
  }
}

Tôi nghĩ rằng tôi có thể sử dụng mô-đun của mình bên trong một mô-đun khác khi cài đặt nó với:

  • npm install github:myorg/webapp-module-storage#master

Tuy nhiên, khi tôi cài đặt mô-đun của mình, tôi gặp lỗi này:

Không tìm thấy gulp cục bộ

Thử chạy: npm install gulp

Ảnh chụp màn hình

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

Sự hiểu biết của tôi là, điều đó gulpđược vận chuyển cùng với mô-đun của tôi vì tôi đã khai báo nó trong devDependenciesnhưng có vẻ như npm postinstalltập lệnh của tôi không thể tìm thấy gulp.

Tui bỏ lỡ điều gì vậy?



1
Thực hiện npm i gulp -Dtrong dự án thư mục. Lưu ý: gulp4 có thể gây ra các vấn đề trong các dự án cũ, để cài đặt một phiên bản cụ thể sử dụng như thế này: npm i gulp@3.9.1 -D(ps -Dcho devDependencies)
Guilherme Nascimento

Câu trả lời:


181

Thử chạy npm link gulptrong thư mục ứng dụng của bạn (để tạo liên kết cục bộ đến mô-đun Gulp được cài đặt toàn cầu).


Người dùng Laravel / homestead tại đây. Tuy nhiên, lệnh trên không hoạt động với tôi npm link gulp --no-bin-links.
Lpgfmk 14/09/17

7
Để làm rõ, npm link [module]tạo ra một liên kết tượng trưng từ [Module] 's thư mục toàn cầu cài đặt vào ./node_modules/[module] tại đường dẫn hiện tại ( npm linkw / o tên liên kết gói, xem man page )
techturbulence

22

Trước tiên, hãy thử cài đặt các phần phụ thuộc của bạn:

npm install

Nếu vẫn không hoạt động, hãy cài đặt gulp trên toàn cầu:

npm install -g gulp

nếu bạn thấy vấn đề khi cài đặt nó. gõ sudo trước npm .

Trong trường hợp bạn cần thêm thông tin về lý do tại sao bạn cần uống nước trên toàn cầu và địa phương, hãy đọc câu trả lời này


1
Gulp được cài đặt trên toàn cầu:[17:51:24] CLI version 1.2.1
Benny Neugebauer

Trên thực tế không có trong ứng dụng sử dụng mô-đun của tôi. Nhưng tôi nghĩ rằng nó sẽ lấy gulptừ đường dẫn của mô-đun của tôi hoặc cái gulp được cài đặt toàn cầu của tôi.
Benny Neugebauer

1
Có vẻ như nó đang tìm kiếm cục bộ bên trong dự án của bạn. Làm thế nào về cài đặt nó cục bộ, bên trong dự án của bạn?
Sebastian SALAMANCA

13

Tôi đã thử tất cả các giải pháp được đề cập. Cuối cùng, tôi đã có thể giải quyết vấn đề bằng cách nhận ra rằng tệp gulpfile.js bị thiếu trên vị trí tôi đang sử dụng gulp. Sau khi đặt gulpfile.js vào thư mục từ nơi tôi đang thực thi gulp, nó đã hoạt động với tôi.


0

npm link gulp --no-bin-links
Chạy cái này

nơi npm link gulptạo liên kết cục bộ tới mô-đun gulp được cài đặt toàn cầu và --no-bin-linksđối số sẽ ngăn npm tạo liên kết tượng trưng cho bất kỳ mã nhị phân nào mà gói có thể chứa.

Bạn không thể dịch các liên kết tượng trưng sang một thư mục được đồng bộ hóa trên Windows share, vì vậy bạn sẽ cần '--no-bin-links' để sử dụng nó.

Sử dụng nó cho bất kỳ hệ thống tệp nào không hỗ trợ liên kết tượng trưng.

Các liên kết tượng trưng, ​​hay liên kết tượng trưng, ​​là các tệp hoặc thư mục “ảo” tham chiếu đến một tệp hoặc thư mục vật lý nằm ở nơi khác và là một tính năng quan trọng được tích hợp sẵn trong nhiều hệ điều hành, bao gồm cả Linux và Windows.


Xin chào! Mặc dù mã này có thể giải quyết câu hỏi, bao gồm giải thích về cách thức và lý do tại sao điều này giải quyết vấn đề sẽ thực sự giúp cải thiện chất lượng bài đăng của bạn và có thể dẫn đến nhiều phiếu bầu hơn. Hãy nhớ rằng bạn đang trả lời câu hỏi cho độc giả trong tương lai, không chỉ người hỏi bây giờ. Vui lòng chỉnh sửa câu trả lời của bạn để thêm giải thích và đưa ra dấu hiệu về những giới hạn và giả định nào được áp dụng.
Brian

Cảm ơn bạn @Brain đã chỉ ra :). Tôi đã chỉnh sửa nó.
Parikshit Singh

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.