どういうわけか、私のアプリには多くのcordovaプラグインがインストールされています。そのため、連絡先から現在の場所まで、ほとんどすべてにアクセスする必要があります(このアプリには必要ありませんが)。
このアプリはjenkinsを介して構築されており、私が理解している限りでは、1つのコマンドですべてのプラグインを削除することが解決策です。
cordova plugin rm org.Apache.cordova.battery-status
cordova plugin rm org.Apache.cordova.camera
cordova plugin rm org.Apache.cordova.contacts
cordova plugin rm org.Apache.cordova.geolocation
cordova plugin rm org.Apache.cordova.media
cordova plugin rm org.Apache.cordova.media-capture
cordova plugin rm org.Apache.cordova.splashscreen
cordova plugin rm org.Apache.cordova.vibration
しかし、時にはそれはいくつかのエラーを示し、そしてjenkinsではどんなエラーでもビルド失敗で終わる、それですべてのプラグインを削除するどんなコマンドもありますか? (インストールの基本的な作業中に、動作するアプリを必要とするプラグインはcordova経由で自動的に追加されるので、私はいくつかのcordova plugin rm -all
を探していましたが、それを見つけることができませんでした)
まず、プラグインを一覧表示する必要があります。
cordova plugin list
この結果で、あなたは単にすることができます:
cordova plugin remove <PLUGIN_NAME>
例えば:
cordova plugin remove org.Apache.cordova.media
それが役に立てば幸い。
あなたはbashでもそれを行うことができます(あなたのCordovaプロジェクトディレクトリに切り替えた後):
for i in `cordova plugin ls | grep '^[^ ]*' -o`; do cordova plugin rm $i; done
端末(osx)から私はいつも使う
cordova plugin -l | xargs cordova plugins rm
パイプ、すべてをパイプにする!
少し拡張すると、このコマンドはcordova plugin -l
の結果をループしてcordova plugins rm
に渡します。
xargsは、以前は知らなかった理由の1つです。 これを参照
あなたは使うことができます:cordova plugins list | awk '{print $1}' | xargs cordova plugins rm
プラグインがすべて削除されたかどうかを確認するには、cordova plugins list
を使用します。
--- v2.0.0 of cordova-check-plugins を使用すると、プロジェクト内のすべてのプラグインを削除できます。
$ npm install -g cordova-check-plugins
$ cordova-check-plugins --remove-all
Cordova CLIを使用して各プラグインを削除しようとしますが、これに失敗すると、platforms/
およびplugins/
からプラグインを強制的に削除します。
Config.xmlからも削除したい場合は、次のようにします。
$ cordova-check-plugins --remove-all --save
免責事項:私はcordova-check-pluginsの作者です
私はこのpython one-linerでそれをします:
python -c "import subprocess as sp;[sp.call('cordova plugin rm ' + p.split()[0], Shell=True) for p in sp.check_output('cordova plugin', Shell=True).split('\n') if p]"
明らかにそれはいかなる種類のエラー状態も処理しませんが、それは仕事を成し遂げます。
これはCordovaでプラグインを削除するためのコマンドラインです。
cordova plugin remove <pluginid>
例えば、私はcordova plugin
を実行してプラグインのリストを得て、それから私はアンインストールするためにプラグインのためにidを使いました
cordova plugin remove com.monday.contact-chooser
コマンドラインで次のように入力するとヘルプが表示されます。
cordova help <command>
私がCordovaから覚えている限りでは、あなたはあなたのプロジェクトで使用されているプラグインのリストを含む "res"フォルダにxmlファイルを持っているべきです。あなたはおそらくリストからそれらの未使用のプラグインを削除する必要があります。また、関連ファイルを削除する必要があります。
インストールされているプラグインの間に依存関係があるため(e、g、cordova-plugin-fileとcordova-plugin-file-transfer)、インストールされているプラグインのリストの処理に基づくスクリプトは機能しない可能性があります。
この例では、スクリプトは最初にファイルプラグインを見つけ、それを削除しようとします。ファイル転送に必要なのでエラーが発生します。したがって、私たちは持っているものとします
コマンドcordova plugin remove <PLUGIN NAME>
を実行するときは、プラグイン名にバージョン番号を追加しないでください。例えば、単純なプラグイン名、
cordova plugin remove cordova.plugin_name
ではない:
cordova plugin remove cordova.plugin_name 0.01
または
cordova plugin remove "cordova.plugin_name 0.01"
特権の問題がある場合、* nixシステムを使っているならSudoを使って実行してください。例えば:
Sudo cordova plugin remove cordova.plugin_name
それから- saveを追加してconfig.xmlファイルから削除することができます。例えば:
cordova plugin remove cordova.plugin_name --save
上記の解決策がうまくいかず、未処理の約束拒否があった場合は、次の手順に従ってください。
Cordovaプロジェクトをきれいにする
コルドバクリーン
コルドバプラットフォーム削除Android/ios
コルドバプラグイン削除
cordova platform rm Android
cordova plugin rm cordova-plugin-firebase
cordova platform add Android
大丈夫です!