У меня проблема с импортом внешнего проекта. Я иду «Файл» -> «Импорт ...» -> «Существующие проекты в рабочую область», выбираю папку, в которой находится проект, и все импортируется, но имена пакетов проекта, похоже, не соответствуют ожиданиям Eclipse. Все имена пакетов имеют префикс:
prefix.packagename1
prefix.packagename2
и т.п.
Но Eclipse ожидает
src.prefix1.prefix.packagename1
src.prefix1.prefix.packagename2
и т.д., потому что каталог src / prefix1 / prefix / package1
Я действительно не хочу возиться с внешним кодом. Как мне сказать Eclipse игнорировать каталог «src / prefix1»? Или что еще я могу сделать?
package (name of package under which the file to be )
в начале файлаОтветы:
Просто войдите в путь сборки и измените исходный путь на
src/prefix1
вместоsrc
.Возможно, проще всего щелкнуть
src
каталог правой кнопкой мыши и выбрать «Путь сборки / Удалить из пути сборки», затем найтиsrc/prefix1
каталог, щелкнуть его правой кнопкой мыши и выбрать «Путь сборки / Использовать как исходную папку».источник
Я только что столкнулся с этой проблемой, и, поскольку решение мистера Скита у меня не сработало, я расскажу, как я решил эту проблему.
Оказывается, я открыл java-файл в 'src' перед тем, как объявить его исходным каталогом.
После щелчка правой кнопкой мыши по каталогу 'src' в eclipse, выбора 'build path', а затем 'Use as Source Folder'
Закройте и снова откройте уже открытый java-файл (обновление F5 не помогло).
Указанный путь к java-файлу от «prefix1» и далее совпадает с пакетом в файле (пример из вопроса prefix1.prefix.packagename2 запрашивающей стороны). Это должно работать
Eclipse больше не должен жаловаться на src.
источник
Переместите ваши проблемные файлы * .java в другую папку.
Щелкните элемент «src» и нажмите «F5».
Красные кресты исчезнут.
Верните файлы * .java в «путь к пакету», щелкните элемент «src» и нажмите «F5».
Все должно быть в порядке.
источник
Если вы импортировали существующий проект, просто удалите исходные папки, а затем снова добавьте их в путь сборки и перезапустите eclipse. В большинстве случаев eclipse будет показывать ошибку до перезапуска.
источник
У меня случается после неудачных сборок, запущенных за пределами IDE. Если очистка вашего рабочего пространства не работает, попробуйте: 1) Удалить все проекты 2) Закройте и перезапустите STS / eclipse, 3) Повторно импортируйте проекты.
источник
Единственное, что у меня сработало, это удаление проекта и его повторный импорт. Работает как шарм :)
источник
У меня иногда возникает эта проблема в Eclipse при импорте проекта Android, у которого нет файла .classpath. Тот, который создает Eclipse, не совсем тот, который ожидает Android. Но файлы .classpath Android обычно являются относительными, поэтому я просто копирую правильный файл .classpath из другого проекта через неправильный .classpath. Я создал видео, которое показывает, как я это делаю: https://www.youtube.com/watch?v=IVIhgeahS1Ynto
источник
Предположим, в вашем проекте есть такой пакет
package name1.name2.name3.name4
(объявленный пакет)В проводнике пакетов отображается
верхний уровень
пакета с именем name1.name2, подпакеты с именем name3.name4
У вас будут ошибки, потому что Eclipse извлекает имя пакета из структуры файловых каталогов на диске, начиная с точки, из которой вы выполняете импорт.
Мой случай был немного сложнее, возможно, потому, что я использовал символическую ссылку на папку за пределами моей рабочей области.
Сначала я попробовал Build Path.Java Build Path.Source Tab.Link Source Button. Перейдите в папку перед name1 в вашем пакете.Folder-name как вам нравится (я думаю). Но были проблемы.
Затем я удалил папку из пути сборки и попробовал «Файл»> «Импорт ...»> «Общие»> «Файловая система»> нажмите «Далее»> «Из каталога»> «Обзор ...» до папки над именем 1> нажмите кнопку «Дополнительно»> установите флажок «Создать ссылки в рабочей области»> нажмите «Готово». кнопка.
источник
Перейдите в папку src проекта и скопируйте весь код из нее во временное место и соберите проект. А теперь скопируйте фактический код из временного местоположения в проект src. И снова запускаем сборку. Проблема будет решена.
Примечание: это характерно для eclipse.
источник
У меня сейчас была такая же проблема. Однако первые несколько ответов мне не подходят. Я предлагаю решение: измените файл .classpath. Например, вы можете определить путь узла classpathentry следующим образом: path = "src / prefix1 / java" или path = " src / prefix1 / resources ". Надеюсь, это поможет.
источник
Для меня проблема заключалась в том, что я конвертировал существующий проект в maven, создавал структуры папок в соответствии с документацией и показывал «основную» папку как часть пакета. Я выполнил инструкции, аналогичные инструкциям Jon Skeet / JWoodchuck, и перешел на путь сборки Java, удалил все неработающие пути сборки, а затем добавил свой путь сборки как 'src / main / java' и 'src / test / java', а также как папки ресурсов для каждого, и это решило проблему.
источник
Путь сборки должен содержать путь «до», указанный в имени пакета.
Например, если структура папок следующая:
src/main/java/com/example/dao
Если класс, содержащий оператор импорта,'package com.example.dao'
жалуется на некорректную ошибку пакета, то путь сборки долженinclude:src/main/java
решить проблему.источник
Щелкните Путь сборки -> Удалить из пути сборки.
Теперь перейдите к папке prefix1 в разделе папок вашего проекта.
Щелкните его правой кнопкой мыши -> Путь сборки -> Использовать как исходную папку.
Выполнено. Папка пакета теперь не будет показывать никаких ошибок. Если он все еще отображается, просто перезапустите проект.
источник