Этот блок компиляции не находится на пути построения Java-проекта
Когда я пытаюсь использовать ctrl+space
, отображается эта ошибка:
This compilation unit is not on the build path of a Java project.
Я вижу, что есть похожие темы, но моя рабочая среда - Eclipse, и я вытягиваю свой проект из Git (я импортирую проект как общий проект), и я использую Apache Ant. Кто-нибудь может мне помочь?
Ответы
Ответ 1
Поскольку вы импортировали проект в качестве общего проекта, он не имеет характера java, и это проблема.
Добавьте ниже строки в файл .project вашего рабочего пространства и обновите.
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
Ответ 2
Перейдите в Project- > right Click- > Select Properties → Project Facets → измените версию java для вашей версии JDK, которую вы используете.
Ответ 3
Если это проект Maven, то иногда его повторный импорт помогает:
- Щелкните правой кнопкой мыши проект в Project Explorer и выберите "Удалить".
- Файл> Импорт...> Maven> Существующие проекты Maven> Далее> Корневой каталог> Просмотр проекта с диска.
Надеюсь, что это решит проблему.
Ответ 4
Еще одна альтернатива решению Loganathan Mohanraj (которое делает то же самое, но из GUI):
- Щелкните правой кнопкой мыши на вашем проекте
- Перейти в "Свойства"
- Выберите "Project Natures"
- Нажмите "Добавить"
- Выберите "Java"
- Нажмите "Применить и закрыть"
Ответ 5
Добавьте это в файл .project
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>framework</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.wst.common.project.facet.core.builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.validation.validationbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
</natures>
</projectDescription>