it-swarm.com.ru

Ошибка затмения: "Не удается разрешить импорт XXX"

Я пытаюсь работать с Hibernate в Eclipse . Я создаю новый простой проект, и я также скачал проект колледжа, через CVS . Оба не работают, в то время как на Eclipse моего коллеги делают . Проблема в том, что для каждого импорта класса Hibernate Eclipse говорит: 

The import org.hibernate cannot be resolved

Но все банки Hibernate находятся в пути сборки, то есть:

antlr-2.7.6.jar
cglib-2.2.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
javassist-3.12.0.GA.jar
jta-1.1.jar
slf4j-api-1.6.1.jar
104
bluish

Я нашел проблему. Это был hibernate3.jar. Я не знаю, почему он не был хорошо извлечен из .Zip, может быть поврежден . Хороший способ проверить, повреждены ли файлы jar, - это перемещаться по их древовидной структуре в «Project Explorer» в Eclipse: если вы не можете развернуть узел jar, возможно, он поврежден. Я видел, что с поврежденными пакетами часто бывает, когда вы перетаскиваете их в «Project Explorer». Может быть, лучше перенести и скопировать их в среде ОС! Спасибо вам всем.

17
bluish

Попробуйте очистить свой проект, перейдя в следующий пункт меню:

Project > Clean...

Если это не сработает, попробуйте удалить файлы jar из пути сборки и добавить их снова.

247
dogbane

Очистить проект. И еще раз проверьте, что банки действительно находятся на пути сборки (без ошибок). Также убедитесь, что в представлении «Проблемы» ничего нет.

19
Bozho

Очевидно, что есть случаи, когда существует действительная проблема, однако Eclipse иногда выдает эту ошибку без уважительной причины. 

Это все еще (2017) кажется старой (2010) ошибкой Eclipse, которую можно устранить, внеся незначительное изменение в настройки проекта.

Параметр, который я выбрал для изменения, был следующий: «Проект»> «Свойства»> «Путь сборки Java»> «Порядок и экспорт»> внести бессмысленное изменение порядка> «Применить».

Смена порядка в обратном порядке не регрессирует к проблеме . Просто коснитесь файл может также решить проблему (в следующий раз я протестирую касание).

18
user1133275

Если это проект Maven, также нажмите Maven >> Обновить проект ... (F5) 

 Update Maven project

12
albertoiNET

У меня была проблема, что путь к классу был как-то сломан.

Поэтому щелкните правой кнопкой мыши по проекту в Package Explorer> Подключаемые инструменты> Обновить путь к классу ... Сделайте это для меня

5
wuppi

Я решил это, удалив проект (не удаляя на диске) и импортировав его снова.

5
SoldierShen
  1. чистый проект Проект -> чистый ...
  2. Щелкните правой кнопкой мыши по проекту -> BuildPath -> Настроить BuildPath -> вкладка Библиотеки ->

Дважды щелкните по JRE SYSTEM LIBRARY -> Затем выберите альтернативный JRE

4
Balkrushna Patil

Попробуйте добавить системную библиотеку JRE в путь сборки вашего проекта.

4
Gaurav Pant

В этом мне помогло изменение уровня соответствия компилятора . По неизвестным причинам он был установлен на 1,6, и я изменил его на 1,8.

На уровне проекта щелкните правой кнопкой мыши проект> Свойства> Компилятор Java, а в Eclipse щелкните меню Окно> Настройки> Java> Компилятор.

1
Alex P.

Я попробовал все ответы выше, но не повезло. В моем случае есть сгенерированная папка build/classes с некоторыми дополнительными файлами ".class". Я закончил тем, что пошел в проводник пакетов, щелкнув правой кнопкой мыши по проекту и выбрав опцию «Обновить», и это снова сделало доступной папку build/classes, чтобы решить проблему.

1
egallardo

Это решило мою проблему.

1) Чистый проект Проект -> чистый ...

2) Щелкните правой кнопкой мыши по проекту -> BuildPath -> Настроить BuildPath -> вкладка Библиотеки -> Дважды щелкните по JRE SYSTEM LIBRARY -> Затем выберите альтернативный JRE

3) Нажмите Сохранить 

4) Снова зайдите в ваш проект в Project Explorer и щелкните правой кнопкой мыши проект -> BuildPath -> Настроить BuildPath -> вкладка Библиотеки -> Дважды щелкните JRE SYSTEM LIBRARY -> На этот раз выберите «Среда выполнения»

5) Применить

1
Atul Waghmare

В моем случае это была разбитая банка в хранилище Maven. Удалите файлы JAR в хранилище и позвольте Maven загрузить их снова.

Когда я запускал mvn clean install из командной строки, он работал нормально, но Eclipse все еще не мог скомпилировать код. Когда я запустил maven install в Eclipse, я увидел, что Maven жаловался на плохой файл jar. Поэтому я удалил его и снова запустил maven install. Проблема исчезла.

1
Evgeny Shmulev

У меня возникла та же проблема, потому что я добавил созданный jar-файл, в котором я установил базовый каталог упаковки, отличный от базового каталога классов . В результате класс, например, Java.util.List пришлось импортировать как util.List, хотя предложенный импорт был первым.

Проверьте импортированные файлы JAR в ссылочных библиотеках, чтобы убедиться, что они импортированы правильно

1
kon psych

Я не понял причины этого, но это решило ту же проблему, с которой я столкнулся. Вы можете потребовать эти шаги перед выполнением шагов, упомянутых в вышеупомянутых решениях (очистить все проекты и автоматически построить).

щелкните правой кнопкой мыши проект -> Свойства -> Фасеты проекта -> выберите Java -> Применить

1
avp

Всякий раз, когда вы сталкиваетесь с этой проблемой, просто зайдите в Проект> Очистить, затем выберите Очистить все проекты. Это должно быть решено, в противном случае попробуйте удалить эти банки и добавить их снова. Последнее, что нужно сделать, это попытаться перезапустить Eclipse.

1
Srinivas Thammanaboina

Чтобы загрузить несуществующий файл jar в каталог .m2, вы должны запустить команду mvn clean install для вашего проекта pom.xml. Затем вы должны обновить зависимости проекта, нажав Alt+F5. Это работает для меня!

0
ÖMER TAŞCI

Решено путем ссылки на источник. В проводнике щелкните правой кнопкой мыши по проекту, выберите свойства, выберите Java Build Path, выберите Source на вкладках, нажмите кнопку «LinkSource». И указав папку для добавления в проект.

0
livelovelaugh

Удаление «module-info.Java» решило проблему для меня!

Этот файл был автоматически сгенерирован и появился в моей иерархии ...

0
val_t

Я также не смог импортировать .. Мне потребовалось несколько часов, чтобы понять, что я пытался использовать библиотеку/jar с привязкой 1.6, в то время как я пытался скомпилировать для 1.8 .... Когда я также переключил свой проект на используйте 1.6, проблема с импортом исчезла .. Все сообщения об ошибках приводили в неправильных направлениях .. Просто в источнике я нашел некоторые ограничения, относящиеся к версии 1.6. И: Например, .settings и .classpath (File-Search) -> org.Eclipse.jdt.core.compiler.codegen.targetPlatform = 1.6 Могут дать подсказку по таким вопросам.

0
sqller

Я решил эту проблему с помощью JAR-файла JPA из репозитория Maven , добавив его в путь сборки проекта.

0
Leandro Bonini

Я столкнулся с той же проблемой и решил ее, удалив jar, который был добавлен дважды в двух разных зависимостях от моего pom.xml. Удаление одной из зависимостей решило проблему.

0
Reema

Если вы работаете с Maven и у вас возникла эта проблема, проверьте сервер репозитория (например, сервер Nexus), если артефакт есть. Иногда они могут изменить имя артефакта, и вы пытаетесь получить артефакт с его старым именем. 

0
drJava

У меня та же проблема. Я скачал флягу и добавил ее к пути сборки, но я не заметил, что расширение было .jar.Zip. Я снова преобразовал его в .jar и добавил к пути сборки.

Это решило мою проблему. Это очень глупая ошибка, но я написал ее здесь на случай, если это кому-нибудь поможет.

0
Ali786

Пожалуйста, попробуйте и проверьте, все ли библиотеки на месте. Я была такая же проблема. Но я решил это, переместив папку lib и снова добавив все jar-файлы в путь сборки.

0
Ravikumar