it-swarm.asia

Intellij Tidak dapat menyelesaikan simbol saat impor

Masalah ini terjadi sebentar-sebentar untuk pustaka yang berbeda dan proyek yang berbeda . Ketika mencoba mengimpor pustaka, paket akan dikenali, tetapi nama kelas tidak dapat diselesaikan.

Jika pada pernyataan impor, saya right-click -> Goto -> the package's declaration, saya melihat semua kelas yang didekompilasi ditampilkan di panel samping - Termasuk yang saya butuhkan -- Jika saya mencoba untuk secara otomatis melengkapi pernyataan impor, saya perhatikan kelas yang saya butuhkan adalah tidak ditampilkan dalam dropdown.

Saya sudah mencoba membatalkan cache, tidak berhasil. Saya tidak dapat menemukan konflik kelas - tidak ada file jar lain di classpath saya dengan nama paket yang sama . Saya dapat mengimpor kelas ini ke proyek lain.

Silakan lihat tangkapan layar:

enter image description here

enter image description here

Adakah yang punya petunjuk?

77
Asaf Ebgi

anda dapat mencoba membatalkan cache dan memulai kembali intellij, dalam banyak kasus ini akan membantu.

File -> Cache/Restart Tidak Valid

149
sahitya

Mungkin ada beberapa alasan untuk ini. Dalam kasus saya itu adalah masalah sumber root yang salah. Tembolok yang tidak valid tidak berfungsi bersama dengan solusi lain.

Periksa akar sumber modul Anda.

  1. Struktur Proyek (Ctrl + Alt + Shift + S).

  2. Modul

  3. Pilih modul masalah Anda.

  4. Ubah tab di atas jendela "Sumber".

  5. Hapus akar sumber yang tidak diinginkan. Simpan satu dan tambahkan src dan uji sumber root di root ini.

29
Vipin Thomas

Saya menghadapi masalah yang sama, komentar Mike membantu saya bergerak ke arah untuk menyelesaikannya. 
Meskipun perpustakaan yang diperlukan adalah bagian dari modul dalam proyek saya juga, itu membutuhkan perubahan ruang lingkup. Dalam dependensi modul, saya mengubah scope ke " Compile " daripada " Test " dan itu berfungsi dengan baik untuk saya sekarang.

10
minx

Periksa dependensi modul Anda.

  1. Struktur Proyek (Ctrl+Alt+Shift+S).
  2. Modul
  3. Pilih modul masalah Anda.
  4. Ubah tab di atas jendela "Ketergantungan".
  5. Periksa pustaka yang diperlukan (mungkin, Anda perlu menambahkan pustaka yang ditentukan di tab 'libraries') atau modul telah terdaftar di sini dan modul tersebut memiliki cakupan yang benar (sebagian besar 'mudah').
10

IntelliJ memiliki masalah dalam menyelesaikan dependensi . Coba yang berikut ini:

  1. Klik kanan pada pom.xml -> Maven -> Impor Ulang
  2. Lagi Klik kanan pada pom.xml -> Maven -> Hasilkan sumber dan perbarui folder
8
Chandlersingh

File -> Cache/Restart tidak valid atau membangun kembali proyek tidak berhasil tidak berhasil.

Apa yang berhasil untuk proyek Gradle saya adalah "Refresh semua proyek Gradle" dari tab Gradle di sudut kanan atas IntelliJ v2017, menggunakan tombol bertanda kuning yang ditunjukkan di bawah ini:

 enter image description here

5
eaykin

File -> Tembolok Tidak Valid/Mulai Ulang Dan Bangun proyek Anda

2
Harsh

Saya menemukan jawaban berikut dari @ jossef-harush dan @ matt-leidholm berguna dari tautan lain

  • di editor IntelliJ, klik pada kata kunci merah (Integermisalnya) dan tekan ALT + ENTER (atau klik ikon bola lampu)
  • pilih Setup JDK dari menu niat

IntelliJ intentions menu

  • klik pada Configurename__

Project SDK selection dialog

  • Dalam kasus saya, jalur JDKsalah (ditunjukkan pada /opt/jdk1.7.0_51 alih-alih /opt/jdk1.7.0_65)

Broken Configure SDK dialog

  • klik pada ... dan browse ke jalur JDKyang tepat

Fixed Configure SDK dialog

  • mari kita bersihkan cache

IntelliJ File menu

2
manntsheth

Saya juga mendapatkan kesalahan ini beberapa kali ketika saya mencoba membangun proyek Java baru. 

Di bawah ini adalah langkah bagaimana saya mendapatkan masalah bodoh ini. 

  1. Buat proyek kosong, dan buat direktori baru src/main/Java.
  2. Buat paket sumber net.gongmingqm10.sketch.
  3. Gunakan gradle wrapper, gradle idea untuk membangun barang gradle untuk proyek.
  4. Tambahkan beberapa dependensi dalam file build.gradle, dan gradle build, masukkan kembali proyek.
  5. Buat User.Java dan School.Java dalam paket yang ada net.gongmingqm10.sketch
  6. Saya mendapat kesalahan saat saya mencoba menggunakan impor Sekolah di User.Java.
  7. Intellij terus mengeluh tidak dapat menyelesaikan simbol saat impor.

Solusi:

Bangun proyek terlebih dahulu, dan tandai main/Java sebagai sumber root. Buat direktori baru dengan nama yang sama net.gongmingqm10.sketch. Pindahkan semua file dari paket lama ke paket baru.

Akar masalah:

Pohon direktori kode sumber

Seperti yang Anda lihat dari pohon. Saya mendapat direktori bernama net.gongmingqm10.sketch. Tapi yang benar-benar kita butuhkan adalah direktori 3 level: net-> gongmingqm10-> sketsa

Tetapi sebelum saya selesai membangun proyek saya di Intellij, saya membuat direktori baru bernama net.gongmingqm19.sketch, yang akan memberi saya direktori nyata dengan nama net.gongmingqm10.sketch.

Ketika kami mencoba mengimpornya. Jelas, bagaimana Intellij dapat mengimpor file di bawah direktori weired dengan nama a.b.c.

1
Ming Gong

Klik kanan pada file pom.xml, pergi ke Maven klik pada Reimport. Saya memiliki masalah yang sama dan ini berhasil untuk saya.

1
rdutta

Saya mencoba membatalkan cache dan memulai kembali, tetapi satu-satunya hal yang berhasil bagi saya adalah menghapus direktori .idea sepenuhnya, kemudian membuat proyek baru dari awal.

1
sheldonkreger

Saya memiliki masalah yang sama dan alasan untuk itu salah menandai sumber proyek.

Saya secara manual membuat Konten Root dan tidak melihat bahwa folder src/main/test ditandai sebagai Sources alih-alih Tests. Jadi itu sebabnya kelas tes saya diasumsikan memiliki semua perpustakaan pengujian mereka (JUnit, Mockito, dll.) Dengan cakupan Compile, bukan Test.

Segera setelah saya menandai src/main/test sebagai Tes dan membangun kembali modul, semua kesalahan hilang.

Saya memiliki ini baru-baru ini ketika mencoba menggunakan Intellij untuk bekerja pada NiFi, ternyata masalahnya adalah bahwa NiFi membutuhkan Maven> = 3.1.0 dan versi yang saya periksa (saya kira default saya) adalah 3.0.5. Memperbarui versi Maven untuk proyek memperbaikinya, jadi dalam beberapa kasus kesalahan versi Maven bisa menjadi hal yang terlihat ... Saya kira itu cukup tidak biasa tetapi jika Anda sampai sejauh ini di utas Anda mungkin memiliki masalah yang tidak biasa :)

0
Isaac

Masalah yang sama. Jika metode ini tidak berhasil. Anda dapat mencoba menghapus lib dari repositori maven lokal, dan impor kembali ke pom.

 mvn repository

Akhirnya tidak masalah bagi saya.

 project

0
Misire J

Setelah pencarian panjang, saya menemukan bahwa ketergantungan entah bagaimana rusak pada mesin saya dalam proyek pakar. Yang aneh adalah bahwa dependensi masih berfungsi dengan benar dalam kode Java yang dikompilasi. Ketika saya membersihkan dan membangun kembali cache ketergantungan maven saya, masalahnya hilang dan IntelliJ mengenali paket itu. Anda dapat melakukan ini dengan menjalankan:

mvn dependency:purge-local-repository

Menariknya, sumber masalah saya karena itu bukan IntelliJ, tetapi pakar itu sendiri.

0
JohannesB

file-> Project Structure -> Modules, cari modul dengan masalah, klik dan pilih tab Dependencies di sisi kanan. Klik tanda tambah hijau, coba tambahkan toples atau perpustakaan yang menyebabkan masalah. Itu bekerja untuk saya.

0
SteveHu

Punya masalah yang sama sampai saya perhatikan bahwa folder src adalah ditandai sebagai sumber root bukan Java!. root sumber memecahkan masalah saya  enter image description here

0
Pipo

Restart sederhana bekerja untuk saya.

Saya sarankan mencoba dulu dengan restart dan kemudian Anda dapat memilih untuk membatalkan cache. 

PS: Membersihkan cache sistem akan menghasilkan membersihkan sejarah lokal.

0
neoguy

Saya menemukan sumber penyebabnya!

Dalam kasus saya, saya menambahkan file jar termasuk beberapa file sumber Java, tapi saya pikir sumber Java buruk, di perpustakaan ketergantungan Intellij Idea itu menambahkan sumber otomatis, jadi di Editor impornya BURUK, HANYA menghapus kode sumber di " Struktur Proyek "->" Perpustakaan ", ini berfungsi untuk saya.

0
crazycode

Apa yang saya lakukan adalah mengedit file paket di folder .idea karena saya secara tidak sengaja menambahkan sumber ke pustaka jar ini dan Android tidak dapat menyelesaikannya dengan menghapus baris sumber seperti yang ditandai pada b/m gambar kesalahan pustaka .

Kemudian membangun kembali masalah gradle dan bam diselesaikan. 

0
mario

Saya memiliki masalah serupa dengan proyek Maven impor saya. Dalam satu modul, itu tidak dapat menyelesaikan simbol pada impor untuk bagian dari modul lain (ya, bagian dari modul itu dapat diselesaikan).

Saya mengubah "direktori home Maven" ke versi yang lebih baru untuk menyelesaikan masalah saya.

Pembaruan: Baik untuk 1 jam, kembali ke status rusak ...

0
Wenbin

@Anton Dozortsev Saya sangat tergila-gila dengan perilaku yang sama; Saya akhirnya menginstal ulang IDE beberapa kali, hanya menyelesaikan masalah setelah menghapus aplikasi IDEA, semua cache, preferensi, dll.

Saya mencoba semua jenis langkah sementara, (seperti memulai ulang, membatalkan, menghapus file .idea dan *.iml, dan lainnya.)

Ternyata, masalahnya adalah karena pengaturan idea.max.intellisense.filesize IntelliJ. Saya telah mengaturnya menjadi 100KB, yang lebih kecil dari ukuran ketergantungan saya, yang mengarah ke IntelliJ yang menunjukkannya tidak dikenal, seperti pada tangkapan layar Anda.

Memperbaiki:

  1. Klik Bantuan -> Edit Properti Kustom

  2. Setel properti ke nilai yang lebih besar; standarnya adalah 2500KB idea.max.intellisense.filesize=2500

0
Mihai Bojin