在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