Почему мне нужно изменить соответствие проекта до 1,5? - PullRequest
7 голосов
/ 29 октября 2010

Я создал проект с maven2 на затмении.После добавления зависимости hibernate-annotations я пытался создать класс, используя аннотации hibernate (@Entity, @Table ...), но он выдавал мне следующую ошибку:

Изменить соответствие проектаи JRE до 1,5

Я исправил это, но не могу понять, почему это требует, пока мой JDK составляет 1,6.

Заранее спасибо!

Ответы [ 3 ]

11 голосов
/ 29 октября 2010

Убедитесь, что настройки для подключаемого модуля maven также установлены на 1.5 или 1.6.Если я не ошибаюсь, maven 2 по умолчанию равен 1.4.

Примерно так:

            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.1</version>
                <configuration>
                    <source>1.5</source>
                    <target>1.5</target>
                </configuration>
            </plugin>
9 голосов
/ 29 октября 2010

Хотя решение javamonkey79 является стандартным способом сделать это, существует также решение на основе свойств, но это не , которое предлагает fgysin :

<properties>
    <maven.compiler.source>1.6</maven.compiler.source>
    <maven.compiler.target>1.6</maven.compiler.target>
</properties>

Ссылка (подключаемый модуль Maven):

Кстати, причина в том, что плагин maven для компилятора создает вызов командной строки для javac, в котором он явно указывает исходную и целевую версии (переопределяя настройки javac по умолчанию).И предыдущие версии плагина компилятора имели свои собственные значения по умолчанию 1.3.Однако начиная с версии 2.3 плагина 1.5 является исходной и целевой версией по умолчанию .

0 голосов
/ 29 октября 2010

Добавьте следующие строки в POM:

   <properties>
      <java.version>1.6</java.version>
   </properties>

Edit: Ах, очень плохо, только что увидел, что это пользовательские свойства ... Не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...