2012-01-21 3 views
1

Я использую maven для компиляции некоторых классов Java. Один из классов имеет аннотацию (@Override), поэтому, когда я бегу mvn compile тогда я получаю сообщение об ошибке:ошибка в компиляции проекта с аннотациями в maven2

annotations are not supported in -source 1.3 
(use -source 5 or higher to enable annotations) 
     @Override 

annotations are not supported in -source 1.3 
(use -source 5 or higher to enable annotations) 
     @Override 

Хотя версия Java в моей системе JDK 1.6.29 до сих пор я не могу понять эту ошибку. Итак, у меня есть способ, с помощью которого я могу проверить версию jdk, которую использует maven, и, возможно, ее изменить. Или, есть ли другое решение? Спасибо.

ответ

2

Вам необходимо указать сборку maven для установки флагов компилятора для компиляции уровня источника java 1.5. Это делается внутри вашего файла pom.xml, добавляя конфигурацию для плагина maven-compiler-plugin.

Например:

<plugins> 
[...] 
    <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <executions> 
       <execution> 
        <id>default-compile</id> 
        <configuration> 
         <source>1.5</source> 
         <target>1.5</target> 
        </configuration> 
       </execution> 
       </executions> 
    </plugin> 
[...] 
</plugins> 
+0

Большое спасибо ..does это 1,5 Подставки для JDK версии? Также могу ли я сделать то же самое в глобальном файле settngs.xml? – pranay

+0

Да и нет; установка тега _source_ до 1.5 делает плагин компилятора maven передающим _-source 5_ аргументом для вызова javac; Аналогично тег _target_ предназначен для передачи аргумента _-target_. То есть для установки уровня исходного кода java, я имею в виду, что jdk 1.6 может поддерживать все уровни среди 3, 5 и 6. –

Смежные вопросы