2013-07-30 40 views
5

Khi tôi thêm một plugin vào dự án phonegap 3.0.0 với nền tảng android, tôi có lỗi xảy ra khi một loạt tệp cho plugin được thêm vào. Ngoài lỗi đó khi tôi thêm, bản kê khai Android không bao giờ được cập nhật với quyền phù hợp.Phonegap thêm plugin không thành công (errno 34) */plugin.xml

$ cordova plugin ls 

No plugins added. 'Use cordova plugin add <plugin>'. 

$ sudo cordova plugin add "http://git-wip-us.apache.org/repos/asf/cordova-plugin-media-capture.git" 

{ [Error: ENOENT, no such file or directory '/tmp/plugman-tmp1375200648427/*/plugin.xml'] 

    errno: 34, 

    code: 'ENOENT', 

    path: '/tmp/plugman-tmp1375200648427/*/plugin.xml', 

    syscall: 'open' } 

$ cordova plugin ls 

[ 'org.apache.cordova.core.media-capture' ] 

Trả lời

2

tôi đã cùng một vấn đề, sau khi một số lỗi và thử nghiệm cuối cùng tôi giải quyết vấn đề:

  1. mở C:\Users\<user>\AppData\Roaming\npm\node_modules\cordova\node_modules\plugman\src\util\plugins.js.

  2. Tìm var cmd = util.format('git clone "%s" "%s"', plugin_git_url, path.basename(tmp_dir)); (dòng 42 ATM)

  3. Thay thế nó với var cmd = util.format('git clone "%s" "%s"', plugin_git_url, tmp_dir);.

Điều này sẽ làm cho git clone sao chép vào đường dẫn tmp tuyệt đối thay vì họ hàng.

+0

Điều này rất hữu ích, tôi nhận ra rằng ban đầu khi tôi cài đặt cordova tôi đã thấy cảnh báo: 'npm WARN engine [email protected]: wanted: {" node ":"> = 0.9 .9 "} (hiện tại: {" nút ":" v0.8.22 "," npm ":" 1.2.14 "})' và kể từ đó tôi đã nâng cấp lên phiên bản mới nhất của nút nhưng không chạy lại 'sudo npm install -g cordova' lệnh. Chạy lại lệnh đó (vì bài đăng này khiến tôi nghi ngờ về trình cắm thêm) đã chỉnh sửa hoặc sửa bất kỳ thứ gì cần thiết và cho phép tôi tiếp tục! – pulkitsinghal

4

Tôi gặp sự cố tương tự với plugin Kết nối. Khi tôi đã thay đổi từ "plugin cordova thêm" thành "plugin điện thoại bổ sung địa phương", nó hoạt động tốt.

$ phonegap local plugin add http://git-wip-us.apache.org/repos/asf/cordova-plugin-media-capture.git 
+1

Ý của bạn là bạn đã thay đổi nó từ "plugin cordova add" thành "phonegap add local plugin"? – aharris88

+1

@Fernando bạn có phiền không? Câu trả lời của bạn theo nghĩa đen không có ý nghĩa –

+0

Anh ấy có nghĩa là anh ta đã sử dụng phiên bản CLI của phonegap thay vì CLI cordova. – Purus

1

Tôi đã nhận được lỗi tương tự. Tôi giải quyết vấn đề này bằng cách loại bỏ các plugin truyền thông chụp, cài đặt plugin tập tin, sau đó cài đặt lại các plugin truyền thông chụp

cordova plugin rm org.apache.cordova.media-capture 
cordova plugin add org.apache.cordova.file 
cordova plugin add org.apache.cordova.media-capture 

Có lẽ truyền thông chụp phụ thuộc vào các plugin file.

0

Hóa ra tôi có điều gì đó thực sự lạ với proxy của mình. Có thể một số dữ liệu nén trên bay khiến dữ liệu bị hỏng. Chia sẻ kết nối từ điện thoại đã giải quyết được sự cố, sau khi gỡ cài đặt hoàn toàn cordova.

5

Tôi cũng đã phải đối mặt với lỗi tương tự:

Giả sử nếu bạn muốn thêm Plugin camera sau đó thay vì đưa ra:

cordova cắm thêm cordova-plugin-camera

sử dụng

plugin phonegap thêm cordova-plugin-camera

và sau đó nó sẽ hoạt động tốt