Masalah ini terjadi sesekali untuk pustaka yang berbeda dan proyek yang berbeda. Saat 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 melengkapi pernyataan impor secara otomatis, saya melihat kelas yang saya butuhkan tidak ditampilkan di dropdown.
Saya sudah mencoba membuat cache tidak valid, 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:
Ada yang punya petunjuk?
sumber
Jawaban:
Anda dapat mencoba membatalkan cache dan memulai ulang intellij, dalam banyak kasus ini akan membantu.
File -> Invalidate Cache / Restart
sumber
Ada beberapa alasan untuk ini. Dalam kasus saya, itu adalah masalah akar sumber yang salah. Cache yang tidak valid tidak berfungsi bersama dengan solusi lain.
Periksa root sumber modul Anda.
Struktur Proyek ( Ctrl+ Alt+ Shift+ S).
Modul
Pilih modul masalah Anda.
Ubah tab di atas jendela "Sumber".
Hapus akar sumber yang tidak diinginkan. Pertahankan satu dan tambahkan src dan uji akar sumber di root ini.
sumber
IntelliJ memiliki masalah dalam menyelesaikan dependensi. Coba yang berikut ini:
sumber
Periksa dependensi modul Anda.
sumber
Jalankan perintah ini di konsol proyek Anda:
Selesai. Mengalami masalah ini berkali-kali. Mencoba 'Invalidate Cache & Restart' dan semua solusi lainnya. Menjalankan perintah itu bekerja dengan sempurna bagi saya. Saya saat ini menggunakan IntelliJ 2019.2, tetapi ini juga terjadi di versi sebelumnya dan solusi juga berfungsi.
sumber
Saya menghadapi masalah serupa, 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 ketergantungan modul, saya mengubah cakupan menjadi " Kompilasi " daripada " Uji " dan sekarang berfungsi dengan baik untuk saya.
sumber
File -> Invalidate Caches / Restart atau membangun kembali proyek tidak berhasil.
Yang berhasil untuk proyek Gradle saya adalah "Menyegarkan semua proyek Gradle" dari tab Gradle di pojok kanan atas IntelliJ v2017, menggunakan tombol bertanda kuning yang ditunjukkan di bawah ini:
sumber
Saya menemukan jawaban berikut dari @ jossef-harush dan @ matt-leidholm berguna dari tautan lain
Integer
misalnya) dan tekan ALT+ ENTER(atau klik ikon bola lampu)Setup JDK
dari menu niatConfigure
JDK
jalurnya salah (menunjuk ke arah/opt/jdk1.7.0_51
sebaliknya/opt/jdk1.7.0_65
)JDK
jalur yang benarsumber
File -> Invalidate Caches / Restart And Build your project
sumber
Klik kanan pada file pom.xml, pergi ke Maven klik pada Reimport. Saya memiliki masalah serupa dan ini berhasil untuk saya.
sumber
Saya mencoba membuat cache tidak valid dan memulai ulang, tetapi satu-satunya hal yang berhasil untuk saya adalah menghapus direktori .idea sepenuhnya, lalu membuat proyek baru dari awal.
sumber
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.
src/main/java
.net.gongmingqm10.sketch
.gradle wrapper
,gradle idea
untuk membangun barang gradle untuk proyek tersebut.build.gradle
file, dangradle build
impor ulang proyek tersebut.User.java
danSchool.java
dalam paket yang sudah adanet.gongmingqm10.sketch
Larutan:
Bangun proyek terlebih dahulu, dan tandai main / java sebagai root sumber. Buat direktori baru dengan nama yang sama
net.gongmingqm10.sketch
. Pindahkan semua file dari paket lama yang mengganggu ke paket baru.Penyebab utama:
Pohon direktori kode sumber
Seperti yang Anda lihat dari pohon. Saya mendapat nama direktori
net.gongmingqm10.sketch
. Tapi yang benar-benar kita butuhkan adalah direktori 3 level: net-> gongmingqm10-> sketchTetapi sebelum saya selesai membangun proyek saya di Intellij, saya membuat direktori baru bernama
net.gongmingqm19.sketch
, yang akan memberi saya direktori asli dengan nama tersebutnet.gongmingqm10.sketch
.Saat kami mencoba mengimpornya. Jelas, bagaimana intellij dapat mengimpor file di bawah direktori weired dengan nama
a.b.c
.sumber
@ Anton Dozortsev Saya dibuat gila oleh perilaku serupa; Saya akhirnya menginstal ulang IDE beberapa kali, hanya mengatasi masalah setelah menghapus aplikasi IDEA, semua cache, preferensi, dll.
Saya mencoba semua jenis langkah dalam interim, (seperti restart, invalidations, menghapus
.idea
dan*.iml
file, dan lain-lain.)Ternyata, masalahnya karena
idea.max.intellisense.filesize
pengaturan IntelliJ . Saya telah mengaturnya ke 100KB, yang lebih kecil dari ukuran ketergantungan saya, yang menyebabkan IntelliJ menunjukkannya sebagai tidak diketahui, seperti di tangkapan layar Anda.Memperbaiki:
Klik Bantuan -> Edit Properti Khusus
Tetapkan properti ke nilai yang lebih besar; defaultnya adalah 2500KB
idea.max.intellisense.filesize=2500
sumber
Punya masalah yang sama sampai saya perhatikan bahwa folder src ditandai sebagai sumber root, bukan java ! Mengubah ke hanya java (src / main / java) menjadi root sumber memecahkan masalah saya
sumber
Setelah pencarian yang lama, saya menemukan bahwa dependensi entah bagaimana rusak pada mesin saya dalam proyek maven. Anehnya, ketergantungan itu masih berfungsi dengan benar dalam kode java yang dikompilasi. Namun, ketika saya membersihkan dan membangun kembali cache dependensi maven, masalahnya hilang dan IntelliJ mengenali paketnya. Anda dapat melakukannya dengan menjalankan:
Menariknya, sumber masalah saya bukan IntelliJ, tapi maven itu sendiri.
sumber
Silakan coba File-> Synchronize. Kemudian tutup dan buka kembali IntelliJ sebelum Anda membatalkan.
Setelah saya memulai ulang. Saya akan membatalkannya tetapi sinkronisasi menghapus semuanya setelah memulai ulang.
sumber
Simple Restart berhasil untuk saya.
Saya akan menyarankan percobaan pertama dengan restart dan kemudian Anda dapat memilih untuk membatalkan cache.
NB: Membersihkan cache sistem akan menghapus riwayat lokal.
sumber
Saya memiliki masalah serupa dengan proyek Maven yang saya impor. Dalam satu modul, itu tidak dapat menyelesaikan simbol impor untuk bagian dari modul lainnya (ya, bagian dari modul itu dapat diselesaikan).
Saya mengubah "direktori home Maven" ke versi yang lebih baru memecahkan masalah saya.
Pembaruan: Baik selama 1 jam, kembali ke status rusak ...
sumber
Saya menemukan sumber penyebabnya!
Dalam kasus saya, saya menambahkan file jar termasuk beberapa file sumber java, tapi menurut saya sumber java buruk, di perpustakaan ketergantungan Intellij Idea menambahkan sumber otomatis, jadi di Editor impor itu BURUK, HANYA hapus kode sumber di " Project Structure "->" Library ", berfungsi untuk saya.
sumber
Apa yang dilakukannya untuk saya adalah mengedit file paket di folder .idea karena saya secara tidak sengaja menambahkan sumber ke perpustakaan jar ini dan android tidak dapat menyelesaikannya dengan menghapus baris sumber seperti yang ditandai dalam kesalahan perpustakaan gambar b / m .
Kemudian membangun kembali masalah gradle dan bam terpecahkan.
sumber
Saya memiliki masalah yang sama dan alasannya adalah salah menandai sumber proyek.
Saya secara manual membuat Konten Root dan tidak memperhatikan bahwa
src/main/test
folder itu ditandai sebagaiSources
bukanTests
. Jadi itulah sebabnya kelas pengujian saya diasumsikan memiliki semua perpustakaan tes mereka (JUnit
,Mockito
, dll) dengan ruang lingkup Kompilasi, tidak Test.Segera setelah saya menandai
src/main/test
sebagai Tes dan membangun kembali modul semua kesalahan hilang.sumber
Saya mengalami ini baru-baru ini ketika mencoba menggunakan Intellij untuk bekerja di 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 tersebut memperbaikinya, jadi dalam beberapa kasus kesalahan penyelarasan versi Maven dapat menjadi sesuatu yang perlu dilihat ... Saya kira itu cukup tidak biasa tetapi jika Anda sampai sejauh ini di utas Anda mungkin mengalami masalah yang tidak biasa :)
sumber
Masalah yang sama. Jika metode ini tidak berhasil. Anda dapat mencoba menghapus lib dari repositori maven lokal, dan mengimpor kembali ke pom.
Akhirnya itu baik-baik saja bagi saya.
sumber
file
->Project Structure
->Modules
, cari modul yang bermasalah, klik dan pilihDependencies
tab di sisi kanan. Klik tanda tambah hijau, coba tambahkan toples atau perpustakaan yang menyebabkan masalah. Itu berhasil untuk saya.sumber
Tidak ada yang saya coba di atas yang berhasil untuk saya (bukan berarti saya mencoba setiap saran). Trik akhirnya adalah mengganti nama kelas - saya baru saja menambahkan 2 ke nama kelas dan nama file. Kemudian saya menyelesaikan semua referensi secara manual. (Karena tidak dikenali, pemfaktoran ulang tidak mengubah referensi secara otomatis.)
Setelah "2-versi" diselesaikan dengan senang hati di mana-mana, saya kemudian dapat memfaktor ulang dan menghapus 2 dari kelas dan file, dan semuanya berjalan sebagaimana mestinya.
sumber
dalam kasus saya solusinya adalah menambahkan proyek sebagai proyek maven, selain fakta bahwa saya mengimpor sebagai proyek maven: P
buka pom.xml -> klik kanan -> tambahkan sebagai proyek maven
sumber
Intelli iDEA menyebabkan masalah bodoh ini @ kali. Goto pom.xml sederhana, klik kanan dan lakukan -> Maven -> Impor ulang.
Ini seharusnya menyelesaikan masalah.
sumber
Untuk edisi 2020.1.4 Ultimate, saya harus melakukan hal berikut
View -> Maven -> Generate Sources and Update Folders For all Projects
Masalah bagi saya adalah perpustakaan tidak diisi
mvn -U clean install
dari terminal.sumber
Hilang
io
? Cobaimport org.openide.util.io.ImageUtilities
.sumber