Maven жалуется на аннотацию @Override в первый раз, но в следующий раз успешно компилируется - PullRequest
2 голосов
/ 16 ноября 2011

Я запускаю команду так:

mvn tomcat:redeploy 

как видите много ошибок типа "... типа ImageDaoImpl должен переопределить метод суперкласса"

Но после этого я ничего не делаю, просто запустите эту команду еще раз, и на этот раз она скомпилируется нормально! Может кто-нибудь сказать мне, как это исправить? Каждое странное время компиляции я получаю эту ошибку, это очень раздражает ..

Ответы [ 2 ]

2 голосов
/ 16 ноября 2011

Я не могу сразу сказать вам, почему проблема исчезла, но обычно эта ошибка компилятора указывает, что вы пытаетесь скомпилировать код, совместимый с Java 6 (который позволяет @Override для реализаций интерфейсов) с компилятором, установленным на Java 5 соответствие (которое позволяет @Override только при переопределении конкретного метода из суперкласса).

1 голос
/ 17 ноября 2011

Я только что решил свою проблему) У меня есть два плагина:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <configuration>
        <source>1.5</source>
        <complianceLevel>1.5</complianceLevel>
    </configuration>
...
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>${jdk.version}</source>
        <target>${jdk.version}</target>
    </configuration>
</plugin>

Первый плагин был настроен на 1.5 Java, другой был настроен на $ {jdk.version}, который равен 1.6 Для меня до сих пор загадка, почему он компилируется вообще, но после установки 1.5-1.6 моя проблема исчезла.

...