我有以下pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.spring-mvc-archetypes</groupId>
<artifactId>spring-mvc-quickstart</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>maven-archetype</packaging>
<name>Spring MVC Maven Archetype: Quickstart</name>
<description>Archetype for creating Spring MVC 4 web application</description>
<url>https://github.com/kolorobot/spring-mvc-quickstart-archetype</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<extensions>
<extension>
<groupId>org.apache.maven.archetype</groupId>
<artifactId>archetype-packaging</artifactId>
<version>2.2</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
以下......
javac -version
javac 1.8.0_05
但是当我运行mvn install时,我得到了......
[INFO] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project basic: Compilation failure
[INFO] Failure executing javac, but could not parse the error:
[INFO] javac: invalid target release: 1.7
任何人都知道我错过了什么?
更新
我找到了需要更新的vi src / main / resources / archetype-resources / pom.xml。现在我明白了......
Caused by: java.lang.IllegalArgumentException: invalid target release: 1.8
我也尝试过这个......
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
没有骰子
答案 0 :(得分:2)
您确定使用的是JDK 1.8吗?当您使用旧版本的Java并尝试使用java 8进行编译时,会出现此问题。 你可能安装了两个版本的java,当你运行maven时,旧的版本正在被使用。尝试打印正在使用的JAVA_HOME。
答案 1 :(得分:1)
适用于1.7和1.8源/目标。
请使用-X选项运行maven,以便获得更多信息。
我的java和maven版本:
mvn -version Apache Maven 3.0.4(r1232337; 2012-01-17 09:44:56 + 0100) Maven主页:/ usr / share / maven Java版本:1.8.0_05,供应商:Oracle Corporation
答案 2 :(得分:1)
问题在于糟糕的OSX糟糕的Java设置。 This帮了很多忙,setjdk 1.8.0_05
完成了工作,谢谢你们!