Maven工程pom中如何定义jdk版本

Maven工程pom定义jdk版本

今天把之前做的项目导进eclipse,然后发现报错,一些类在1.6中不支持,需要将JDK版本设置为1.7,我直接通过eclipse中的提示进行更改,然后update project一下,发现又回到了SE1.6版本,我想一定是在pom中定义了这个java版本,查看pom文件,发现编译插件定义的1.6版本,代码:

<plugin>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>1.6</source>

<target>1.6</target>

</configuration>

</plugin>

所以将编译版本更改为1.7之后就好了,

<plugin>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>1.7</source>

<target>1.7</target>

</configuration>

</plugin>

注意:这里说的是通过工程的编译插件

另外,在一般的工程中定义当前项目所用的jdk版本

<properties>

<...> ...<...>

<java.version>1.8</java.version>

<...> ...<...>

</properties>

这个properties属性配置一般配置在<parent>标签之后,如果引用了自己公司的框架,应该在框架内就有定义版本,则不需引入,总之,按需要进行设置。设置之后可以在编译插件中引入即可:

<plugin>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>${java.version}</source>

<target>${java.version}</target>

</configuration>

</plugin>

配置pom的jdk注意事项

<!-- 添加修改jdk插件 -->

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>1.7</source>

<target>1.7</target>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

这个代码或许你会说很简单,如果配置完出现红叉就很尴尬了,eclipse为每个项目都配置了一套自己的运行版本,就是图下

新建maven项目好像默认是jre1.5的,然后老版本的运行环境跟不上我们开发的脚步,配置成1.7之后必须得到Project Facets里把对于的java版本换成1.7,

否则会出现版本不匹配错误,就是Java compiler level does not match the version之类的错误,切记切记

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

以上是 Maven工程pom中如何定义jdk版本 的全部内容, 来源链接: utcz.com/p/251938.html

回到顶部