Problem

Building a Maven project, hit following annotation error message in Maven output console.


[INFO] Compilation failure
E:\workspace\serlvetdemo\src\main\java\com\mkyong\AppServletContextListener.java:
[8,2] annotations are not supported in -source 1.3 
(use -source 5 or higher to enable annotations)
        @Override

Solution

Maven default is using JDK1.3 for the project compilation, building or packaging (mvn compile, install). Since JDK1.3 is not support annotation, if your project has annotation, you need to configure your Maven to use the latest JDK version. The solution is very simple, just include the Maven compiler plugin and specify the JDK version. For example,


<project ....>
 <build>
  <plugins>
	<plugin>
		<artifactId>maven-compiler-plugin</artifactId>
		<version>2.3.2</version>
		<configuration>
			<source>1.6</source>
			<target>1.6</target>
		</configuration>
	</plugin>
   </plugins>
  </build>
</project>

Above declaration tell Maven to use JDK 1.6.

Reference

  1. http://maven.apache.org/plugins/maven-compiler-plugin/