2017-10-01 24 views
2

クラスはContainerActivityクラスで拡張されています。他のいくつかのプロジェクトでBaseActivityを使用したいので、Androidライブラリに移動しました。これを他のプロジェクトへの依存関係として追加しました。 Baseクラスを移動する以外に、拡張するクラスでコードが変更されていません。しかし、すべてのメソッドでオーバーライドメソッドにエラーが発生しました。ここでは、スーパーメソッドに@CallSuperという注釈が付けられています。サブクラスはまだsuperメソッドを呼び出しています。私は問題なくコンパイルしてプロジェクトを実行することもできます。Android Studio/Kotlin - 無効なエラー「オーバーライドメソッドはスーパーを呼び出す必要があります。」

ここにエラーメッセージのイメージがあります。 enter image description here

ここで私は実際にスーパーメソッドを呼び出しています。 (のonCreateから追加のコードを削除しました) enter image description here

ここBaseActivity がenter image description here

では、誰もが、これはエラーではありません認識するIDEを取得するために解決策を見つけていますか?


更新:

私は、ライブラリの私のプロジェクトにアプリケーションモジュールを追加しました。彼らも同じエラーがあります。ライブラリを含む何かが、そのライブラリからメソッドを継承しているとエラーが表示されるようです。@CallSuper

+3

私はここにバグを提出しました。https://issuetracker.google.com/issues/68973255 – texasbruce

+1

ここにhttps://issuetracker.google.com/issues/67035929 – texasbruce

答えて

-1

IDEキャッシュを再起動しようとしましたか無効にしましたか?

+1

私はまだエラーがあります – zafrani

+0

私は同じコードを書いています私のIDEでそれは動作して、警告はありません。クラスのインポートセクションを表示できますか? –

+0

はい、BaseActivityを別のライブラリモジュールに移動するまで機能します。次に、モジュールを依存関係として追加し、別のプロジェクトでクラスを拡張します。 – zafrani

関連する問題