LoginSignup
0
0

More than 5 years have passed since last update.

cordovaでプラグインがインストールできなくなった

Posted at

はじめに

cordovaで下記プラグインをインストールしようとしたところエラーが発生。
ごにゃごにゃやっているうちの他のエラーも発生しだしました。

なんとか、エラーがでないようにはなったので、
今後の自分の為にメモしておきます。

発生環境

cordova 4.3.1

エラーが発生したプラグイン

◎phonegap-plugin-push

cordova plugin add https://github.com/phonegap-build/PushPlugin.git

エラー内容

Failed to install 'com.phonegap.plugins.PushPlugin':TypeError: Uh oh!
Arguments to path.resolve must be strings
    at Object.posix.resolve (path.js:439:13)
    at Object.module.exports.framework.install (/usr/local/lib/node_modules/plugman/node_modules/cordova-lib/src/plugman/platforms/android.js:139:35)
    at installWrapper (/usr/local/lib/node_modules/plugman/node_modules/cordova-lib/src/platforms/platforms.js:77:32)
    at Object.ActionStack.process (/usr/local/lib/node_modules/plugman/node_modules/cordova-lib/src/plugman/util/action-stack.js:68:25)
    at handleInstall (/usr/local/lib/node_modules/plugman/node_modules/cordova-lib/src/plugman/install.js:576:20)
    at /usr/local/lib/node_modules/plugman/node_modules/cordova-lib/src/plugman/install.js:363:28
    at _fulfilled (/usr/local/lib/node_modules/plugman/node_modules/q/q.js:787:54)
    at self.promiseDispatch.done (/usr/local/lib/node_modules/plugman/node_modules/q/q.js:816:30)
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/plugman/node_modules/q/q.js:749:13)
    at /usr/local/lib/node_modules/plugman/node_modules/q/q.js:509:49

解決策

バージョン指定をしてインストールしたところ解消しました。

cordova plugin add https://github.com/phonegap-build/PushPlugin.git#2.4.0

◎google-analytics-plugin

プラグインを追加する際に下記のエラーが発生
プラグインを消して入れなおしても解消しない。

cordova plugin add com.danielcwilson.plugins.googleanalytics

エラー内容

SyntaxError: Unexpected string
    at Object.parse (native)
    at getJson (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/util/metadata.js:29:31)
    at Object.exports.save_fetch_metadata (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/util/metadata.js:56:24)
    at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/fetch.js:148:18
    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
    at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:355:11)

下記をやってみたら解消した。
・プロジェクト/packeage.jsonのcordovaPlugins{}の定義を削除
・プロジェクト/plugin/fetch.jsonを削除
・プラグインを一旦消して入れなおす
・0.6.1のバージョンをいれる

cordova plugin add com.danielcwilson.plugins.googleanalytics@0.6.1
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0