Системная библиотека Eclipse JRE [J2SE-1.5] - PullRequest
39 голосов
/ 29 марта 2012

Я использую Eclipse EE 3.7 с установленным плагином m2e. У меня в затмении установлен JDK7. Когда я импортирую maven проекты, JRE устанавливается на JRE System Library [J2SE-1.5], поэтому у меня возникают проблемы с компиляцией с java 6. Вместо этого я хочу, чтобы JRE в затмении по умолчанию было установлено в JRE System Library [J2SE-1.6]

Когда я пытаюсь открыть новый проект в файле eclipse -> new -> Java на первом экране, у меня есть возможность выбрать JRE, а третий вариант - Use default JRE (currently 'jdk1.7.0_03')

Из этого видно, что JRE по умолчанию в Eclipse равно 1.7, но когда я импортирую новые проекты Maven, для JRE по умолчанию устанавливается значение 1.5.

Любая помощь, как я могу это сделать?

Ответы [ 3 ]

79 голосов
/ 29 марта 2012

Проблема не в Eclipse, а в проектах, которые вы импортируете. m2e установит JRE проекта в соответствии с проектом maven. POM указывает версию JRE, и по умолчанию используется значение 1,5, если оно отсутствует. Вам нужно это в POM:

<build>
     <plugins>
        <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                   <source>1.7</source>
                   <target>1.7</target>
                </configuration>
        </plugin>
    </plugins>
</build>
6 голосов
/ 10 февраля 2016

Артбристол дал правильный ответ (и я проголосовал за него).

Это было в 2012 году. Вот обновление, более подходящее для сегодняшнего дня (2016, Java 8, Spring 4.x / Servlet 3.x):

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-compiler-plugin</artifactId>
   <version>3.0</version>
   <configuration>
      <source>1.7</source>
      <target>1.7</target>
   </configuration>
</plugin>
0 голосов
/ 30 января 2019

Основной причиной этой проблемы является то, что Eclipse не может разрешить допустимое значение для свойства maven.compiler.source при обновлении файла .classpath из pom, просто используется файл по умолчанию, т. Е.

org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5.

Просто добавьте в вас следующие свойства pom.xml и обновите проект:

<properties>
            <javaVersion>1.8</javaVersion>
            <maven.compiler.source>${java.version}</maven.compiler.source>
            <maven.compiler.target>${java.version}</maven.compiler.target>
</properties>
...