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が通過し、「強制」なしでこの最後のプラグインを削除することができました
問題の原因は、プラグインが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
私にとって、それが修正されたのは、Android SDK via Android Studio、次に実行することでした:
cordova plugin rm cordova-plugin-compat --force
cordova platform rm Android
cordova platform add [email protected]
それが誰かを助けることを願っています!
私はcordova-plugin-fileで同じ問題を抱えていますが、今のところ解決策はありますか?
https://forum.ionicframework.com/t/cordova-plugin-file-cordova-Android-6-3-0-build-error/110682
Compatプラグインを必要とする別のプラグインがある可能性があります。これについては、プラグインのpackage.jsonを確認してください。
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
バージョン1.2より古いプラグイン互換性を削除します
$ cordova plugin rm cordova-plugin-compat --force
次にバージョン1.2を追加します
$ cordova plugin add [email protected]
これは私にとってはうまくいきました!