Entah bagaimana di aplikasi saya, banyak plugin cordova diinstal dan karena itu membutuhkan akses ke hampir semua hal - dari kontak saya ke lokasi saat ini (meskipun aplikasi ini tidak memerlukan ini).
Aplikasi ini dibangun melalui jenkins dan sejauh yang saya mengerti salah satu solusinya adalah menghapus setiap plugin dengan satu perintah, jadi akan seperti:
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
Tetapi terkadang itu menunjukkan beberapa kesalahan dan dengan jenkins setiap kesalahan berakhir dengan kegagalan build, jadi apakah ada perintah yang menghapus semua plugin? (selama penginstalan, plugin dasar yang memerlukan aplikasi apa pun untuk berfungsi ditambahkan secara otomatis melalui cordova, jadi saya mencari beberapa cordova plugin rm -all
tetapi tidak dapat menemukannya)
Jawaban:
Pertama, Anda harus mencantumkan plugin Anda:
Dengan hasil ini, Anda cukup melakukan:
Sebagai contoh:
Semoga membantu.
sumber
cordova plugin remove <PLUGIN_NAME> --save
sehingga secara otomatis dihapus dari config.xmlAnda juga dapat melakukannya dengan bash (setelah beralih ke direktori proyek Cordova Anda):
sumber
Anda bisa menggunakan:
cordova plugins list | awk '{print $1}' | xargs cordova plugins rm
dan gunakan
cordova plugins list
untuk memverifikasi apakah semua plugin telah dihapus.sumber
Error: Plugin "{}" is not present in the project. See `cordova plugin list`
cordova plugins ls
dan lihat apakah Anda dapat menghapus plugin satu per satu menggunakancordova plugins rm plugin_name
. Dari kesalahan tersebut, sepertinya salah satu plugin tidak ada secara fisik dalam proyek Anda. Dengan menggunakan metode ini, Anda dapat menemukan plugin itu.v2.0.0 dari cordova-check-plugins memungkinkan Anda untuk menghapus semua plugin dalam sebuah proyek:
Ini akan mencoba menggunakan Cordova CLI untuk menghapus setiap plugin, tetapi jika gagal, itu akan memaksa penghapusan plugin dari
platforms/
danplugins/
.Jika Anda juga ingin menghapus dari config.xml, gunakan:
Penafian: Saya adalah penulis dari cordova-check-plugins
sumber
C:\Users\yourusername\AppData\Roaming\npm
jika Anda menjalankan Windows atau/usr/local
di kernel UNIX. Anda dapat mengetahui apa awalan Anda dengan mengetik di terminal / perintahnpm config get prefix
Dari terminal (osx) yang biasa saya gunakan
Pipa, pipa semuanya!
Untuk sedikit memperluas: perintah ini akan mengulang hasil dari
cordova plugin -l
dan memberi makan kecordova plugins rm
.xargs adalah salah satu perintah yang Anda bertanya-tanya mengapa Anda tidak tahu sebelumnya. Lihat tut ini.
sumber
Saya melakukannya dengan python one-liner ini:
Jelas itu tidak menangani segala jenis kondisi kesalahan, tetapi menyelesaikan pekerjaan.
sumber
Sejauh yang saya ingat dari Cordova, Anda seharusnya memiliki file xml di folder "res" yang berisi daftar plugin yang digunakan dalam proyek Anda. Anda mungkin perlu menghapus plugin yang tidak digunakan itu dari daftar. Dan juga Anda harus menghapus file terkait.
sumber
sumber
Ini adalah baris perintah untuk menghapus plugin di Cordova
cordova plugin remove <pluginid>
Misalnya saya menjalankan
cordova plugin
dan mendapatkan daftar plugin lalu saya menggunakan id untuk menghapus plugincordova plugin remove com.monday.contact-chooser
Anda bisa mendapatkan bantuan di baris perintah dengan mengetik
cordova help <command>
sumber
cordova plugin list
.Skrip berdasarkan pemrosesan daftar plugin yang diinstal mungkin tidak berfungsi karena ada dependensi antara plugin yang diinstal (e, g, cordova-plugin-file dan cordova-plugin-file-transfer).
Dalam contoh, skrip akan menemukan plugin file terlebih dahulu, kemudian akan mencoba menghapusnya dan kami akan mendapatkan kesalahan karena transfer file memerlukannya. Oleh karena itu, kami akan melakukannya
sumber
--force
, yang akan menghapus plugin apapun ...Saat menjalankan perintah:,
cordova plugin remove <PLUGIN NAME>
pastikan Anda tidak menambahkan nomor versi ke nama plugin. Hanya nama plugin biasa, misalnya:dan tidak:
atau
Jika ada masalah hak istimewa, jalankan dengan sudo jika Anda menggunakan sistem * nix, misalnya:
Kemudian Anda dapat menambahkan --simpan untuk menghapusnya dari file config.xml. Sebagai contoh:
sumber
Seharusnya baik-baik saja!
sumber
Jika solusi di atas tidak berhasil dan Anda mendapat penolakan janji yang tidak tertangani, coba ikuti langkah-langkah berikut:
Bersihkan proyek Cordova
cordova bersih
Platform cordova menghapus android / ios
plugin cordova hapus
sumber