最近拿到一个maven系统,需要使用jdk1.8的环境才能运行(公司开发使用jdk1.7),于是下载、安装jdk1.8。
安装完成之后(本人使用idea工具),打开module settings,设置里面的Modules->Dependencies->module sdk为安装好的1.8版本,同时还得设置Modules->Dependencies->sources模块中的Language Level为8。
这样操作之后其实只是设置了module的sdk,若是工程中有很多modules,可以直接设置Project菜单下的project sdk,同时别忘了设置project language level。(在jdk1.8中支持了lambda方式,若是使用了,就必须吧language level切换为8,否则是不认的)
这时可以去执行代码,突然发现编译出错
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project jiraRobot: Compilation failure: Compilation failure:
[ERROR] /Users/Documents/workspace/*.java:[29,62] 错误: -source 1.5 中不支持 diamond 运算符
[ERROR] (请使用 -source 7 或更高版本以启用 diamond 运算符)
经过查看应该是利用maven的插件maven-compiler-plugin来进行的编译,但是这个编译指定的版本却是1.5的,所以编译肯定会失败的。
可以通过增加配置,以纠正错误,如下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.8</source> <!-- 源代码使用的开发版本 --> <target>1.8</target> <!-- 需要生成的目标class文件的编译版本 --> <!-- 一般而言,target和source是保持一致的,但是,有时候为了让程序能在其他版本的jdk中运行,会存在target和source不一致的情况 --> </configuration> </plugin> </plugins> </build>
配置修改之后再运行就没有任何问题了。
相关推荐
maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的jdk版本编译的话...maven的默认编译使用的jdk版本貌似很低,使用maven-compiler-plugin插件可以指定项目源码的jdk版本,编译后的jdk版本,以及编码。
Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project
我们知道Maven只是个项目管理工具,如果要编译Java代码是不行的,而maven-compiler-plugin这个是Apache官方提供的Maven编译Java源码的功能插件,我们在项目中经常使用到,也就是我们平时使用的mvn compile指令就是...
这样,您可以确保您不会浪费时间在Apache Maven范围之外的东西上。 假设您的问题不存在,请提交该问题的票证。 清楚地描述问题,包括在出现错误时重现的步骤。 确保填写您知道存在问题的最早版本。 在GitHub上...
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version> <maven-javadoc-plugin.version>3.3.0</maven-javadoc-plugin.version> <maven-source-plugin.version>3.2.1</maven-source-plugin....
Google Closure Compiler Maven插件,用于在Java Webapp中编译和最小化javascript。 推荐用法: <plugin> <groupId>org.apache.maven.plugins <artifactId>maven-war-plugin <id>prepare-package ...
简单的maven插件,可使用protoc 嵌入式protoc编译器来编译.proto文件,从而在主要平台(Linux,Mac / OSX和Windows)上提供了一些可移植性。 在构建时,插件会检测平台并执行相应的协议二进制文件。 支持嵌入式...
Maven插件及安装方法,在用到maven的时候,在编译平台汇总,需要用到这个插件。
闭包编译器 Maven 插件 Maven 插件,用于使用 Google 的 Closure 编译器编译/压缩 JavaScript 代码
maven-compiler-plugin-2.3.2.jar maven-core-2.0.9.jar maven-core-2.0.jar maven-dependency-analyzer-1.4.jar maven-dependency-tree-1.1.jar maven-deploy-plugin-2.4.jar maven-doxia-tools-1.0.2.jar maven-...
编译器-eclipse 适用于 ... 使用 xqbase-compiler-eclipse 作为通过 maven 编译的解决方法: < build> < plugins> < plugin> < artifactId>maven-compiler-plugin</ artifactId> < version>3.2</ version> < conf
<artifactId>maven-compiler-plugin <!-- <version>3.6.1</version> --> <source>1.7 <target>1.7 <encoding>UTF-8</encoding> </plugin> <!-- 将源码打包成JAR包 --> ...
closure-compiler-maven-plugin.zip,google闭包编译器maven pluginmaven plugin用于使用google闭包编译器编译javascript
maven-compiler-plugin 编译工具 脚手架特性 生产/开发环境切换 本地开发使用classpath下的jdbc.properties 测试环境使用env/config-dev/jdbc.properties 生产环境使用env/config-pro/jdbc.properties 命令 mvn ...
maven-compiler-plugin:编译项目的源代码 maven-surefire-plugin:生成 txt 和 xml 格式的报告 Cucumber报告:以漂亮的图形生成报告 依赖项:编译时添加到类路径的 JAR 文件 Cucumber-java:运行 Cucumber Cucumber...
fasm-compiler-plugin.zip,此插件允许您使用flat assembler(fasm)compiler.maven插件编译asm文件以编译flat assembler(fasm)asm文件。
org.lappsgrid.annotation-processor警告由于代码已合并到,因此该项目已失效。 该存储库仅出于历史原因保留。介绍用于为LAPPS服务... < plugin> < artifactId>maven-compiler-plugin</ artifactId> < configurat
此处未使用 Java 8 功能,但如果您使用其他 Java 版本,则首先必须更改 pom.xml 文件和 maven-compiler-plugin 的配置。启动应用程序要启动应用程序,请在您喜欢的控制台中,进入项目位置并键入: mvn spring-boot:...
<artifactId>maven-compiler-plugin <version>2.0.2 <source>1.5 <target>1.5 </plugin> 添加如下配置就不会再报错了 pom.xml文件代码: <project xmlns="http://maven.apache.org/POM/4.0.0...
这个测试作业是在 eclipse 上完成的。 要执行测试,我们需要安装 maven 和 JDK 1.6 及以上版本 项目依赖于 junit 和 maven-compiler-plugin mvn clean install 将编译代码并运行所有 junit 类