最新のCordovaバージョンにアップグレードした後(.6.)cordova build ios
コマンドを実行すると、このエラーが発生します。
エラー:
/Volumes/local.uhmuhm.net/projectxxx/htdocs/phonegap/src/Projectxxx/platforms/ios/Projectxxx/Classes/MainViewController.m:154:19: error: no visible @interface for 'CDVCommandDelegateImpl' declares the selector 'execute:' return [super execute:command];
その他の情報:
インストール済みプラットフォーム:Android 3.6.3、ios 3.6.
私は最新のXcodeバージョン(6.0.1)を使用しています
Cordovaを3.6.3にアップグレードした後にすべてが始まりました(その前に3.4.1を実行していました)
これを解決する方法についてのアイデアはありますか?
Nazarが述べたことに基づいて、新しいアプリを作成して既存のplatforms/ios/Classes
フォルダーを比較するときの重要な違いは、MainViewController.m
からexecute
メソッドを削除することだけでした。
これにより、ビルドエラーが解消されます。
私は同じ問題を修正しました
cordova platform remove ios
cordova platform add ios
実行cordova create
新しいCordovaバージョンで新しいプロジェクトを作成し、AppDelegate
およびMainViewController
を「古い」プロジェクトのファイルにコピーします。その後、エラーはなくなります。
今日も同じ問題がありました。 CordovaLib/Classes/CDVCommandDelegateImpl.mファイルにはこれがないことがわかりました。
- (BOOL)execute:(CDVInvokedUrlCommand*)command
{
return [_commandQueue execute:command];
}
最新のCordova 3.5.0の同じファイルにあったためです。そのため、私はこのスニペットと適切な宣言をCDVCommandDelegateImpl.hファイルに追加しました。
- (BOOL)execute:(CDVInvokedUrlCommand*)command;
そして今、私のアプリが実行されています!これが良い解決策であるかどうかはわかりませんが、うまくいけば十分です:)