web-dev-qa-db-ja.com

cordova-plugin-compatを削除する方法は?

Cordova-Android 6.3.0( https://cordova.Apache.org/announcements/2017/09/27/Android-release.html )のリリースノートには、cordova-plugin-compat削除する必要があります

やってみたら

cordova plugin rm cordova-plugin-compat

次のエラーが発生します

[エラー] cordovaプラグインの実行中にエラーが発生しましたremovecordova-plugin-compat --save(終了コード1):

エラー:プラグイン「cordova-plugin-compat」は(cordova-plugin-calendar、cordova-plugin-camera、cordova-plugin-file、cordova-plugin-geolocation)で必要であり、アンインストールをスキップします。 (更新しようとする場合は--forceを試してください)

次に、削除を--forceしようとすると、機能し、プラグインが削除され、Androidアプリをビルドできます。

しかし、iOSプラットフォームを削除して再度追加したところ、エラーが発生しました

cordova prepare iosエラー:プラグイン「cordova-plugin-compat」のplugin.xmlが見つかりません。もう一度追加してみてください。

[エラー] cordova prepare ios(終了コード1)の実行中にエラーが発生しました。

私が間違っていることは何ですか?本当にcordova-plugin-compatを削除する必要がありますか?私のiOSプラットフォームがそれを参照しているのはなぜですか、それはAndroid専用だと思いましたか?

私は[email protected][email protected]を使用しています

追伸:iOSプラットフォームを削除して追加すると、compatプラグインがpackage.jsonとpackage-lock.jsonに参照として自動的に追加されます

[〜#〜]更新[〜#〜]

最後のプラグインリリース( https://cordova.Apache.org/news/2017/11/10/plugins-release.html )はおそらくこの問題をそれぞれ解決し、問題は他のプラグインからのcordova-plugin-compatプラグインへの参照。だが、

Compatも参照されている別のプラグインを使用しているため、まだ完全にテストして解決することはできません( https://github.com/EddyVerbruggen/Calendar-PhoneGap-Plugin/issues/426 )。

これが互換性の参照を解決することを100%確認できるまで、このスレッドを開いたままにします。

最終更新

Calendar-PhoneGap-Pluginから「cordova-plugin-compat」への依存関係を削除するPRが通過し、「強制」なしでこの最後のプラグインを削除することができました

6
David Dal Busco

問題の原因は、プラグインがcordova-plugin-compatを直接参照していたことでした。

したがって、プラグインの使用が非推奨になったとしても、それは依然として必要でした。プラットフォームを削除して再度追加した場合、これらの参照のために、プラグイン「cordova-plugin-compat」がそのプロセス中に自動的に再度追加されたため、(-forceを使用して)強制的に削除することは解決策ではありませんでした。

この問題の解決策は、新しいリリースを待つか、PRを送信して依存関係を削除することでした。

私の場合、cordova-plugin-compatを参照しているプラ​​グインがありました。

エラー:プラグイン「cordova-plugin-compat」は(cordova-plugin-calendar、cordova-plugin-camera、cordova-plugin-file、cordova-plugin-geolocation)で必要であり、アンインストールをスキップします。 (更新しようとする場合は--forceを試してください)

次のプラグインを更新すると、私の問題は解決しました。

[email protected][email protected]、および[email protected]は依存関係を削除しました( https://cordova.Apache.org/news/2017/11/10/plugins-release.htmlを参照

[email protected]はこのPRを通じて依存関係を削除しました https://github.com/EddyVerbruggen/Calendar-PhoneGap-Plugin/pull/4

6
David Dal Busco

私にとって、それが修正されたのは、Android SDK via Android Studio、次に実行することでした:

cordova plugin rm cordova-plugin-compat --force
cordova platform rm Android
cordova platform add [email protected]

それが誰かを助けることを願っています!

2
Uniphonic

私はcordova-plugin-fileで同じ問題を抱えていますが、今のところ解決策はありますか?

https://forum.ionicframework.com/t/cordova-plugin-file-cordova-Android-6-3-0-build-error/110682

0
Daniel Ehrhardt

Compatプラグインを必要とする別のプラグインがある可能性があります。これについては、プラグインのpackage.jsonを確認してください。

0
John Josef

Cordova-plugin-compatはAndroid専用なので、iOSでエラーが発生することはありません。Cordovaプロジェクトをクリーンアップすることをお勧めします。

次のディレクトリを削除します:plugins、platforms、node_modules。それらは再作成されます

次に実行します:

cordova platform add Android
cordova platform add ios
cordova prepare # usually made by commands above but juste in case
cordova compile
0
pom421

バージョン1.2より古いプラグイン互換性を削除します

$ cordova plugin rm cordova-plugin-compat --force

次にバージョン1.2を追加します

$ cordova plugin add [email protected]

これは私にとってはうまくいきました!

0
Mo Hafiz