maven设置target以及source版本
jdk的向下兼容:
就是高版本jdk可以编译出低版本的编译版本;
低版本的编译版本可以运行在高版本上的jdk上
-------------------------------------------------------------------
1.使用方式
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<outputFileName>测试</outputFileName>
</configuration>
</plugin>
</plugins>
</build>
2.为什么存在?
学东西不仅需要知其然还要知其所以然,source用来配置源代码使用的开发版本,target用来配置需要生成的目标class文件的编译版本,那么有些朋友可能会问为什么maven编译不使用class将来被部署的环境的jdk版本:有时可能会因maven版本需求或者其他一些插件需求,这些限制规定了我们必须在编译机器上使用比如说jdk7及其以上的版本,但是我们运行的环境使用的是jdk6,这时候就需要增加一个source参数来解决这个问题。
------------------------------------------------------------------------------------------------------------------
生产是1.6的jdk环境,我的开发工具是1.8的jdk,打了个补丁,要改为jdk1.6,然后重新编译。
一直以为还要再装一个1.6jdk(一个笔记本上面可以装两个版本jdk的),其实jdk是向下版本兼容的,只要在编译的时候改为jdk1.6的就行。
然后呢,稍微总结一下jdk向下兼容,
注意:高版本编译的java代码,在低版本无法运行。反之,则可以。
参考:https://blog.****.net/weimenglala/article/details/102753582