亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

解決maven?maven.compiler.source和maven.compiler.target的坑

 更新時(shí)間:2021年12月30日 15:26:22   作者:zhjh256  
這篇文章主要介紹了解決maven?maven.compiler.source和maven.compiler.target的坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

maven maven.compiler.source和maven.compiler.target的坑

最近建議產(chǎn)品組把jdk 1.7升級(jí)到1.8,昨晚開發(fā)報(bào)了個(gè)問題過來,說maven.compiler.source和maven.compiler.target改成1.8之后,編譯出來的代碼還是1.7,如下:

也可通過javap -v ServiceImpl.class 查看class文件的java編譯版本號(hào)。

下午抽空看了下,果不其然,第一懷疑就是maven.compiler.source和maven.compiler.target這兩參數(shù)不靠譜。

看了下,IDE配置的JDK

如下:

自動(dòng)build之后,的確是jdk 1.7

如下:

換成J2SE-1.8

換成1.6

查詢maven官方文檔,可知maven.compiler.source和maven.compiler.target僅僅是推薦,不是強(qiáng)制。

如果要強(qiáng)制jdk版本

可指定executable屬性來保證,如下:

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
          <verbose>true</verbose>
          <fork>true</fork>
          <executable><!-- path-to-javac --></executable>
          <compilerVersion>1.3</compilerVersion>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>

問題解決。

maven編譯報(bào)錯(cuò)java: -source,pom設(shè)置maven.compiler.source原理

我們編譯的插件Maven compiler Plugin就是用來編譯代碼的,以前剛學(xué)java的時(shí)候,使用javac 命令編譯.java文件為.class文件.

而設(shè)置

   <maven.compiler.source>${java.version}</maven.compiler.source>
    <maven.compiler.target>${java.version}</maven.compiler.target>

就是指定javac-source與target選項(xiàng)的,官網(wǎng)

在這里插入圖片描述

有時(shí)候,maven編譯報(bào)錯(cuò)java: -source 1.5 中不支持 diamond 運(yùn)算符就是因?yàn)闆]有指定編譯版本.指定版本即可

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論