Pertanyaan 'Harus Mengesampingkan Kesalahan Metode Superclass' setelah mengimpor proyek ke Eclipse


Kapan saja saya harus mengimpor ulang proyek saya ke Eclipse (jika saya menginstal ulang Eclipse, atau mengubah lokasi proyek), hampir semua metode saya yang diganti tidak diformat dengan benar, menyebabkan kesalahan The method must override a superclass method.

Mungkin patut dicatat bahwa ini adalah proyek Android - karena alasan apa pun, nilai argumen metode tidak selalu terisi, jadi saya harus mengisi sendiri secara manual. Contohnya:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //These arguments have their correct names
    public void onCreateContextMenu(ContextMenu menu, View v, 
                                    ContextMenuInfo menuInfo) {                 
    }

});

awalnya akan diisi seperti ini:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //This methods arguments were not automatically provided    
    public void onCreateContextMenu(ContextMenu arg1, View arg2,
                                    ContextMenuInfo arg3) {
    }

});

Yang aneh adalah, jika saya menghapus kode saya, dan Eclipse secara otomatis membuat ulang metode, ia menggunakan nama argumen yang sama dengan saya, jadi saya tidak benar-benar tahu di mana masalahnya, selain itu ia otomatis memformat metode untuk saya.

Ini cukup merepotkan karena harus secara manual membuat SEMUA metode saya yang diganti dengan tangan. Jika ada yang bisa menjelaskan mengapa ini terjadi atau bagaimana memperbaikinya .. saya akan sangat senang.

Mungkin itu karena cara saya memformat metode, yang ada di dalam argumen metode lain?


1126
2017-11-05 03:17


asal


Jawaban:


Eclipse default ke Java 1.5 dan Anda memiliki kelas menerapkan metode antarmuka (yang di Jawa 1,6 dapat dianotasi dengan @Override, tetapi di Java 1.5 hanya dapat diterapkan pada metode yang menggantikan metode superclass).

Pergi ke proyek Anda / preferensi IDE dan mengatur level compiler Java ke 1.6 dan juga pastikan Anda memilih JRE 1.6 untuk mengeksekusi program Anda dari Eclipse.


1383
2017-11-05 03:33



Dengan Eclipse Galileo Anda pergi ke Eclipse -> Item menu Preferensi, lalu pilih Java dan Compiler di dialog.

Sekarang masih mungkin menunjukkan tingkat kepatuhan compiler pada 1,6, namun Anda masih melihat masalah ini. Jadi sekarang pilih tautan "Konfigurasikan Pengaturan Spesifik Proyek ..."dan di sana Anda akan melihat proyek ditetapkan ke 1,5, sekarang ubah ini menjadi 1,6. Anda harus melakukan ini untuk semua proyek yang terpengaruh.

Antarmuka menu / dialog Bizantium ini khas dari desain UI Eclipse yang buruk.


301
2017-09-08 03:48



Dalam hal ini terjadi pada orang lain yang mencoba baik alfazero dan metode Paul dan masih tidak berhasil.

Bagi saya, gerhana entah bagaimana 'cache' kesalahan kompilasi bahkan setelah melakukan Proyek> Bersihkan ...

Saya harus menghapus centang pada Project> Build Automatically, lalu melakukan Project> Clean, dan kemudian membangun lagi.

Juga, ketika ragu, coba restart Eclipse. Ini dapat memperbaiki banyak kesalahan yang aneh dan tidak bisa dijelaskan.


74
2018-01-26 17:22



Untuk mengatasi masalah ini, Pergi ke properti Proyek Anda -> Java compiler -> Pilih tingkat kepatuhan compiler ke 1.6-> Apply.


38
2017-12-26 09:38



Jawaban oleh Paul bekerja untuk saya sebagian. Saya masih memiliki satu kesalahan itu. Jadi, selain itu, saya juga harus pergi ke Properties-> Project Facets dan di sana mengatur versi Java dari 1.5 ke 1.6.

Mungkin itu membantu.


18
2018-02-05 16:25



Guys dalam kasus saya tidak ada solusi di atas yang berhasil.

Saya harus menghapus file di dalam ruang kerja Proyek:

  • .proyek
  • .classpath

Dan foldernya:

  • .setelan

Lalu saya menyalin yang dari proyek serupa yang bekerja sebelumnya. Ini berhasil memperbaiki proyek saya yang rusak.

Tentu saja jangan menggunakan metode ini sebelum mencoba alternatif sebelumnya !.


11
2017-12-28 20:31



Jika tidak ada hal di atas yang membantu, pastikan Anda memiliki "Lingkungan eksekusi"dipilih, dan tidak sebuah "Alternate JRE".

Dapat ditemukan di bawah:

Project -> Build Path -> Perpustakaan

Pilih JRE System Library dan klik Edit....

Jika "Alternate JRE ..." dipilih, ubahlah menjadi "Lingkungan Eksekusi" yang sesuai JavaSE-1.8 (jre1.8.0_60). Tidak tahu kenapa, tapi ini akan menyelesaikannya.


9
2017-09-04 21:44



Ini adalah kali kedua saya menghadapi masalah ini. pertama kali menurut rekomendasi alfazero itu berhasil. tetapi dalam kedua kalinya saya set ke 1.6 itu tidak bekerja seperti 'CACHE' kesalahan ini setelah bersih dan membangun kembali.

Cobalah untuk menonaktifkan 'Build Automatically' ketika Rollin_s berkata -> kesalahan masih ada di sini!

Jadi saya menghapus proyek masalah (sudah diatur ke 1.6) dari Package Explorer dan mengimpornya lagi -> itu mulai membangun kembali dan tidak ada kesalahan saat ini

Semoga ini bisa membantu seseorang


8
2017-12-14 06:20