Поиск по сайту:

[Исправлено] Eclipse — уровень компилятора Java не соответствует версии установленного аспекта проекта Java


Недавно я импортировал проект Maven в Eclipse и изменил библиотеку путей сборки для работы с Java 1.7. После этого Eclipse показал мне ошибку в проекте, хотя ни в каких файлах ошибок не было.

Уровень компилятора Java не соответствует версии установленного аспекта проекта Java.

Исправлена ошибка, из-за которой уровень компилятора Java не соответствовал версии установленного фасета проекта Java.

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="2.3"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.5"/>
</faceted-project>

Я изменил его ниже.

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="2.3"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.7"/>
</faceted-project>

После обновления проекта ошибка исчезла.

Дополнительный совет для уровня компилятора Java не соответствует версии установленного аспекта проекта Java

Если вы хотите изменить уровень соответствия компилятора с терминала, вам необходимо отредактировать следующие свойства в файле org.eclipse.jdt.core.prefs.

org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.source=1.7

Мы также можем изменить библиотеку в файле .classpath проекта, но это непросто и зависит от имени, настроенного для библиотеки, например, в моем файле classpath моего проекта запись для JRE выглядит так ниже.

<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/Home">
	<attributes>
		<attribute name="owner.project.facets" value="java"/>
	</attributes>
</classpathentry>

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