Why is Maven generating this error: "...is not supported in -source 1.5"?
Solution 1
Most likely this is a problem with your environment, not maven (ie, your JAVA_HOME environmental variable changed). It's worth noting that the compiler plugin is required anyway. By including this compiler section in your pom you are ensuring that your code gets compiled with the correct compiler, regardless of your environmental settings.
Solution 2
The default source/target levels are 1.5, which doesn't support Java 1.7 syntax, obviously.
- http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#source
- http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#target
As to why it would "suddenly" change, something changed in your m2e or project configuration.
HolySamosa
Updated on September 14, 2022Comments
-
HolySamosa about 1 year
This morning Maven starts complaining with this error:
error: multi-catch statement is not supported in -source 1.5
Oddly, I'm using JDK 7 and this code has been building fine for weeks. I'm just using m2e with a default POM with no compiler versions specified.
Here's my Maven version information:
Apache Maven 3.0.2 (r1056850; 2011-01-08 19:58:10-0500) Java version: 1.7.0_03, vendor: Oracle Corporation Java home: C:\SDKs\Java\jdk1.7.0_03\jre Default locale: en_US, platform encoding: Cp1252 OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
I can get around it by using the Maven compiler plugin like so:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.4</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin>
Still, I'd like to understand why Maven would suddenly start misbehaving and requiring the use of the compiler plugin.
-
Artem over 11 yearsYou are always using the maven-compiler-plugin. This is just configuring it.
-
prayagupa over 2 yearsPossible the
maven-compiler-plugin
is not configured right and not picked by maven.
-