日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

本文介紹了如何在Spring/Spring Boot pom.xml中指定Java版本?的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

將Java 11指定為在Spring(或Spring Boot)pom.xml文件中使用的版本的正確方式是什么?

即,我需要在pom的java.version屬性中輸入什么值?

對(duì)于Java 8,我們使用1.8,就像the documentation shows一樣,對(duì)于Java 9,它是1.9。

我不確定Java 11是否會(huì)是1.11(盡管它似乎不太可能),我看到它在使用maven-compiler-plugin時(shí)只是指定為11,但我沒(méi)有使用編譯器插件。

例如

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <release>11</release>
    </configuration>
</plugin>

我到處搜索,但都找不到答案,因?yàn)槲易x過(guò)的幾乎所有文檔以及與Java版本相關(guān)的博客文章都只顯示版本8或9。

那么我應(yīng)該使用什么?1.11還是只使用11

我兩個(gè)都試過(guò)了,我的Web服務(wù)器似乎正確啟動(dòng)和正確編譯(IntelliJ顯示Information:javac 11.0.2 was used to compile java sources),但我不完全相信更改java.version值有什么作用,因?yàn)槲铱梢詫⑵湓O(shè)置為例如100,一切正常。

我能找到的唯一相關(guān)問(wèn)題是:Minimum Spring version compatible with Java 11、Spring Boot fails due to a Hibernate error after migrating to JDK 11和Spring 4.3.x with OpenJDK 11,但它們并沒(méi)有真正揭示任何問(wèn)題。

推薦答案

簡(jiǎn)短回答:

正確的方法是對(duì)不同的Java版本使用<java.version>中的下列值:

Java 8:1.8或8
Java 9:9
Java 10:10
Java 11:11
Java 12:12
…..
…..
Java 16:16
Java 17:17

因此,對(duì)于Java 11,應(yīng)該是:

<properties>
   <java.version>11</java.version>
</properties>

然而,我不確定Java 11是否會(huì)是1.11&q;(似乎不太可能),以及
我看到它在使用maven-編譯器-plugin時(shí)被指定為11&q;
但是,我沒(méi)有使用編譯器插件。

實(shí)際上,它最后仍然使用maven-compiler-plugin進(jìn)行編譯。SpringBoot只配置一個(gè)<java.version>屬性,這樣通過(guò)更改此值,您就隱式地將maven-compiler-plugin<source/><target/>更改為與<java.version>

中指定的值相同的值

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>11</source>  <!-- same as <java.version> -->
        <target>11</target>    <!-- same as <java.version> -->
    </configuration>
</plugin>

詳細(xì)答案:

您似乎想要詳細(xì)信息來(lái)說(shuō)服您。

因?yàn)槊總€(gè)Spring Boot項(xiàng)目都會(huì)對(duì)父POMspring-boot-starter-parentdefines<java.version>進(jìn)行如下擴(kuò)展:

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

docs、maven.compiler.sourcemaven.compiler.target<source><target>配置參數(shù)的user property。由于用戶屬性的行為,將這兩個(gè)屬性設(shè)置為11意味著設(shè)置以下內(nèi)容:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>11</source>   <!-- maven.compiler.source  -->
        <target>11</target> <!-- maven.compiler.target -->
    </configuration>
</plugin>

maven-compiler-plugindocs中,<source><target>是Java編譯器(javac)的-source-target參數(shù)。然后,從javac文檔中,我們可以看到這兩個(gè)參數(shù)被允許具有以下值:

1.6:Java SE 6中沒(méi)有引入任何語(yǔ)言更改。但是,源文件中的編碼錯(cuò)誤現(xiàn)在報(bào)告為錯(cuò)誤,而不是
警告與早期版本的Java Platform標(biāo)準(zhǔn)版相同。
6:1.6的同義詞。
1.7:編譯器接受具有Java SE 7中引入的功能的代碼。
7:1.7的同義詞。
1.8:編譯器接受具有Java SE 8中引入的功能的代碼。
8:1.8的同義詞。
9:編譯器接受具有Java SE 9中引入的功能的代碼。
10:編譯器接受具有Java SE 10中引入的功能的代碼。
11:編譯器接受具有Java SE 11中引入的功能的代碼。
12:編譯器接受具有Java SE 12中引入的功能的代碼。

因此,對(duì)于Java 11,<java.version>應(yīng)設(shè)置為11。

這篇關(guān)于如何在Spring/Spring Boot pom.xml中指定Java版本?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,

分享到:
標(biāo)簽:Boot pom Spring xml 如何在 指定 版本
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定