在Java开发是咱们大多都使用集成开发环境,像idea和eclipse用的都比较多,在使用idea maven构建项目时,在修改pom.xml文件时,咱们的项目jdk版本都会回退,还得每次去设置中修改jdk版本,以下:apache
settings设置jdk版本:eclipse
project structure设置jdk版本:maven
通过上述两个地方设置完成后项目正常,可是当咱们在pom中添加jar依赖包时,或修改pom文件后,maven都会从新构建项目,这样咱们原来设置的jdk版本会被重置,项目中由于jdk版本太低会报错,可能咱们再按上面设置一下又会好了,可是若是咱们项目比较多,或者频繁改动pom文件,那么咱们会改到肌无力,这么频繁的修改jdk,是咱们码农没法忍受的,咱们作开发的目的就是节省人力成本,有没有一劳永逸的方法呢,答案是确定的,我在这里介绍两种方式:一种是针对项目设置的;一种是针对maven全局设置的;要使用哪一种方式你们按本身喜爱来选择:ide
1.针对项目的设置:ui
须要咱们再项目的pom.xml中配置一个pulgin:idea
<build> <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> </build>
配置完成后,不管咱们怎么修改项目,其依赖度的jdk版本都不会变化,这种方式的好处是:咱们的项目每每是可能使用不用的jdk版本,如果咱们没法统一各项目的jdk版本,这种方式比较适合;另外一个每每咱们的项目是多人协同开发的,在项目里设置,其余人pull下代码,无需设置jdkspa
2.针对maven全局设置code
<profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
这种方式设置,咱们本地不管哪一个项目都是使用maven中配置jdk版本,这样全部项目中都不须要配置jdk版本,可是这种方式,最好是各个项目jdk版本是一致的,若是有不一样jdk版本的项目能够单独在项目中按第一种方式设置;另外一个就是若是咱们协同开发,其余人也必须在本身本地配置mavenxml
上述两种方式各有利弊,也可配合使用blog