В Eclipse появилась ошибка. Что означает это сообщение об ошибке:
The type iglu.ir.TermVector cannot be resolved. It is indirectly referenced from required .class files
В Eclipse появилась ошибка. Что означает это сообщение об ошибке:
The type iglu.ir.TermVector cannot be resolved. It is indirectly referenced from required .class files
Это означает: "Для используемого класса нужен другой класс, который не находится в пути к классам". Вы должны убедиться (как предлагает Гарри Джой), чтобы добавить требуемую банку в путь к классам.
Это похоже на то, что Eclipse запутался, поскольку это фактическая ошибка. Я проигнорировал эту ошибку и запустил веб-службу, чья endpointInterface она жаловалась, и она работала нормально, за исключением того, что приходилось иметь дело с диалогом каждый раз, когда я хотел его запустить. Еще одна непрозрачная ошибка, которая ничего мне не говорит.
Иногда это происходит со мной, я всегда исправлял это с помощью команды "mvn eclipse: clean" для очистки старых свойств, а затем запускал mvn eclipse: eclipse -Dwtpversion = 2.0 (для веб-проекта, конечно). Есть несколько старых свойств, которые сохраняются, поэтому затмение иногда путается.
Эта ошибка возникает, когда классы в файле jar не соответствуют той же структуре, что и структура папок jar.
например. если у вас в классе файл есть пакет com.test.exam, а class.jar, созданный из этого файла класса, имеет структуру test.exam... ошибка будет выбрана. Вам нужно исправить структуру пакета вашего класса .jar, а затем включить его в путь сборки ecplipse...
Похоже, что это была известная проблема (ошибка 67414), которая была разрешена в версии 3.0... кто-то прокомментировал, что это происходит и для них в версии 3.4.
В то же время работа вокруг заключается в том, чтобы удалить Системную библиотеку JRE из проекта, а затем снова добавить ее.
Here are the steps:
Перейдите к свойствам проекта с ошибкой сборки (щелкните правой кнопкой мыши > Свойства)
Перейдите на вкладку "Библиотеки" в разделе "Путь сборки"
Найдите в списке "Системную библиотеку JRE" (если этого не хватает, это сообщение об ошибке не является ошибкой затмения, а неправильно сконфигурированным проектом)
Удалите "Системную библиотеку JRE"
Нажмите "Добавить библиотеку...", выберите "JRE System Library" и добавьте соответствующую JRE для проекта (например, "Рабочая область по умолчанию JRE" )
Нажмите "Готово" в выборе библиотеки и "ОК" в свойствах проекта, а затем дождитесь повторной сборки проекта
Мы надеемся, что ошибка будет решена...
Если вы все еще не можете найти что-то не так с вашей настройкой, вы можете попробовать Project → Clean и очистить все проекты в рабочей области.
EDIT: Извините, не видел предложения verbose_mode... то же самое
Я получил это исключение, потому что eclipse работал в другой версии jdk, просто изменился на правильный, чистый и сработал и работает!
Для меня это происходит, когда я обновляю свой jdk до 1.8.0_60 с помощью старого набора баннеров, который использовался в течение длительного времени. Если я вернусь к jdk1.7.0_25, все эти проблемы исчезнут. Кажется, проблема совместимости между JRE и библиотеками.
У меня была эта ошибка из-за поврежденного локального репозитория maven.
Итак, чтобы исправить эту проблему, все, что мне нужно было сделать, это зайти в мой репозиторий и удалить папку, в которой был указан соответствующий .jar, а затем принудительно выполнить update maven
в Eclipse.
У меня возникла ошибка, когда я просто изменяю некоторые настройки svn и ничего в коде. Исправлена ошибка при очистке проектов.
В моем случае я создал проект и сделал его minSdkVersion=9
и targetSdkVersion=17
. Я автоматически использовал libs/android-support-v4.jar
. Мне также пришлось использовать ActionBarActivity
, используя android-support-v7-appcomapt.jar
. Поэтому я просто скопировал файл android-support-v7-appcompat.jar
из папки android-sdk/extras/andrid/support/v7/appcompat/libs
и вставил его в папку проекта libs
. И это вызвало вышеупомянутую ошибку.
Поэтому в основном мне нужно было поместить файл android-support-v4.jar
из android-sdk/extras/andrid/support/v7/appcompat/libs
в мою проектную папку libs
. По моим сведениям, файл v7.jar
имел зависимости от файла v4.jar
. Таким образом, он нуждался в собственном файле v4.jar
, а не в моем проекте, автоматически создавал файл v4.jar
.
Быстро и просто я исправил его таким образом (я использую версию ADT: v21.0.0-531062 в домашней версии Windows XP)
Он работал, но проблема возвращается каждые несколько дней. Я делаю то же, что и выше, и он решает и позволяет мне развиваться.
В дополнение к уже предложенной причине отсутствия файла класса эта ошибка также может указывать на дубликат файла класса, eclipse сообщает об этой ошибке, когда файл класса на пути сборки использует другой класс, который имеет несколько определений в пути сборки.
Поскольку вы даете нам очень мало деталей, скорее всего, то, что вы сделали, что невероятно легко сделать, заключается в том, что вместо заголовка
Build Path > Configure Build Path > Projects
и добавив дополнительную папку проекта, вместо этого вы отправились в
Build Path > Configure Build Path > Libraries
и вместо этого добавил вашу папку проекта.
Это наиболее определенно, если ваш код все правильно, но после автоматической реорганизации импорта с помощью ctrl+space
ярлыка вместо ваших операторов импорта, ссылающихся на com.your.additionalproject, ваши ссылки все указывают на bin.com. your.additionalproject.
Обратите внимание на корзину. Это означает, что вы косвенно ссылаетесь на свой класс, рассматривая вашу структуру папок другого проекта как библиотеку, что делает вашу среду IDE делать все wokr для поиска точно двоичного класса, на который вы ссылаетесь.
Чтобы исправить это, удалите папку из Библиотеки и вместо этого добавьте ее на вкладке "Проекты" и реорганизуйте свой импорт. Ваш проект должен работать нормально.
Когда я использую новую версию eclipse и пытаюсь использовать предыдущее рабочее пространство, которое я использовал со старой версией eclipse, эта ошибка возникла.
Вот как я решаю проблему:
Щелкните правой кнопкой мыши мой проект в Проводнике пакетов → Свойства → Путь сборки Java → Библиотеки → Я вижу ошибку (Cross Sign) в JRE System Library. Потому что путь не найден. → Дважды щелкните Системную библиотеку JRE → Выберите параметр "Рабочая область по умолчанию JRE" → Готово → ОК. → БУМ ЭТО РАБОТАЕТ
FYI.
Это случилось со мной из-за транзитивных зависимостей в моих баночках
В моем случае это было результатом добавления новой зависимости к моему файлу pom.xml
.
Новая зависимость зависела от старой версии библиотеки (2.5). Эта же библиотека потребовалась другой библиотекой в моем pom.xml
, но для нее потребовалась версия 3.0.
По какой-то причине, когда Maven сталкивается с этими конфликтами, он просто пропускает самую последнюю версию. В Eclipse при просмотре pom.xml
вы можете выбрать вкладку "Иерархия зависимостей" внизу, чтобы увидеть, как разрешаются зависимости. Здесь вы обнаружите, что библиотека (и, следовательно, класс), о которой идет речь, была опущена по этой причине.
В моем случае это было так же просто, как заблокировать более новую версию. Вы можете сделать это, щелкнув правой кнопкой мыши запись - есть возможность заблокировать ее в контекстном меню.