Ответ 1
У меня была такая же проблема с Cordova в Windows 7. Мне пришлось откат до 5.0.0 (npm install -g [email protected]), чтобы заставить ее работать снова.
Я сделал обновление cordova/phonegap, и теперь я больше не могу устанавливать плагины из git urls. Кто-нибудь испытал такую проблему и уже решил это?
$ cordova plugin add https://github.com/dawsonloudon/VideoPlayer.git
Fetching plugin "https://github.com/dawsonloudon/VideoPlayer.git" via git clone
Repository "https://github.com/dawsonloudon/VideoPlayer.git" checked out to git ref "master".
shell.js: internal error
Error: EXDEV, cross-device link not permitted '/var/folders/xl/bkl76rm570gfsmjspfjgh45h0000gn/T/git/1434106220728/LICENSE'
at Object.fs.renameSync (fs.js:554:18)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/mv.js:77:8
at Array.forEach (native)
at Object._mv (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/mv.js:53:11)
at Object.mv (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/src/common.js:186:23)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/util/plugins.js:53:19
at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:557:44
Информация о версии:
$ phonegap -v
5.0.0-0.28.1
$ cordova -v
5.1.1
OSX 10.10.3
EDIT: Кажется, что он работает, если я перемещаю свой репозиторий в свой домашний каталог (~/).
У меня была такая же проблема с Cordova в Windows 7. Мне пришлось откат до 5.0.0 (npm install -g [email protected]), чтобы заставить ее работать снова.
Быстрое исправление заключается в клонировании git локально и пути оттуда. Чтобы плагин начал работать, все, что ему нужно, это увидеть файл plugin.xml
Итак cordova plugin add https://github.com/phonegap/phonegap-plugin-fast-canvas.git
- сбой, потому что
shell.js: internal error
Error: EXDEV, cross-device link not permitted '/
- нормальная ошибка в Кордове 5.1.0+. Применяется к большинству, если не все .git install
Локальный клон::
git clone https://github.com/phonegap/phonegap-plugin-fast-canvas.git
И локальная установка
cordova plugin add /path/to/phonegap-plugin-fast-canvas
Works.
Эта проблема исправлена в последней версии кордовы (5.2.0).
Обновите Кордову, используя npm install -g cordova
Чтобы расширить другие полезные ответы, приведенные здесь,
Как временный обходной путь, здесь однострочный, который понизит Кордову, установит плагин и обновит Кордову назад:
npm install -g [email protected] && cordova plugin add [plugin url] && npm install -g cordova
Потребуется некоторое время для выполнения, но исключает все операции клонирования ручного репо.
У меня была такая же ситуация с тобой. и resvole эта проблема должна отбросить кордову до 5.0.0
Проблема возникает из node.js fs.rename()
, которая не может переименовать файлы перекрестных устройств.
Возможным обходным решением является замена fs.renameSync()
чем-то еще на cordova/node_modules/cordova-lib/node_modules/shelljs/src/mv.js
Например:
var run=require('sync-runner');
...
run("mv '"+src+"' '"+thisDest+"'");
sudo npm install -g [email protected]
плагин sudo cordova добавить https://github.com/litehelpers/Cordova-sqlite-storage.git
В Кордове 5.1.1 есть ошибка, которая может привести к тому, что плагины, установленные из репозитория Git, не с ошибкой "Ошибка: EXDEV, ссылка между устройствами не разрешена", если проект находится на другом диске, чем ваша временная папка,
Вы можете добавлять плагины из npm. Или, если вы должны добавить версию плагина Git, вы можете вместо этого загрузить копию, распаковать ее и добавить плагин из файловой системы, поместив его в файл config.xml и указав путь к каталогу в "spec",: https://cordova.apache.org/docs/en/latest/config_ref/index.html#plugin
У меня была такая же проблема, и я решил ее решить, следуя советам Амилассина (откат в Кордове версии 5.0). Еще одна проблема, с которой я столкнулся, это мой путь установки Git (C:\Program Files\Git\bin) не был добавлен в переменные среды. Как только я исправил обе проблемы, мне удалось установить нужные мне плагины.
Для тех, кто имеет такую же проблему с кордовой версией версии 7.0.1 или новее, разрешите мою, включив файл package.json в базовый каталог проекта и убедитесь, что версия в файле package.json имеет шаблон XXX example 1.0.0 иначе вы получите недопустимую ошибку версии.