问题描述java
Java的企业级项目开发中,Spring基本实现了一统天下,并且SpringBoot的出现更是将入门的难度降至接近零门槛。不少状况下,借助Maven神器,零基础的同窗能够快速的实现搭建基于SpringBoot的项目。python
在编写pom配置文件的时候,每每都会加上java.version=1.8这样的属性配置,为何要这样作?不加会产生什么影响。面试
问题分析spring
java.version=1.8这行配置信息的意思很是明显,就是告诉Maven的编译器,其java的版本为8.可是以上只是咱们的推测,并无找到相关的依据。编程
【Maven冷知识】Compiler插件上一篇文章,已经了解maven的官方告诉咱们其默认的java版本为1.6,所以提供了两种方式来修改版本,分别是:浏览器
和服务器
这两种方式均可以实现,可是能够看出官方并无提出java.version这样的配置信息来修改,那你们平时常常使用的java.version出自何处呢?是否是会起做用呢?机器学习
解决方案maven
在pom文件中,还有一处配置信息,引发了咱们的注意,那就是:函数
根据Maven的parent知识,了解到当前用户自定义的开发项目的配置都会继承于spring-boot-starter-parent的pom文件,所以很是有必要了解该文件,看是否可以找到线索。
打开该文件,找到了让咱们很是惊喜的一幕:
这是2.0.5.RELEASE版本的pom文件,从上面能够看到其定义了一个java.version的属性,并且在下方定义了maven.compiler.source以及maven.compiler.target信息,正是使用了上一篇文章的第一种方式来定义了。至此全部的迷雾都已经揭开了,有没有一点顿悟的感受。
结语
java.version是不少初学者在学习SpringBoot项目的时候,都会加上的一行配置信息,可是该配置并不是Maven官方的配置,通过分析发现原来是SpringBoot官方作的,其本质是为了做用于Maven官方定义的maven.compile上的,另外因为其默认值就是1.8,若是你的项目自己要求的就是1.8版本,所以彻底没有必要加上这行配置。
更多精彩文章: