我有一個gradle構建檔案如下:
plugins {
id 'org.springframework.boot' version '2.7.5'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
id 'java'
}
group = 'com.example'
version = '1.0'
sourceCompatibility = '17'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
ext {
set('springBootAdminVersion', "2.7.4")
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'de.codecentric:spring-boot-admin-starter-client'
compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
dependencyManagement {
imports {
mavenBom "de.codecentric:spring-boot-admin-dependencies:${springBootAdminVersion}"
}
}
tasks.named('test') {
useJUnitPlatform()
}
重繪 我的 gradle 專案后,我mssql-jdbc-10.2.1.jre8.jar在類路徑中看到了。不過,我的專案使用的是 Java 17。
為什么 Spring Boot 不匯入 Java 17 版本mssql-jdbc-10.2.1.jre17.jar,因為我使用的是 Java 17?使用那個罐子有問題嗎?
同樣,使用最新版本的驅動程式11.2.1有問題嗎?
也許,只有mssql-jdbc-10.2.1.jre8.jar經過批準/完全測驗才能與 Spring Boot 2.7.5 一起使用。如果是這樣,當我的專案使用 JRE 17 時可以使用該 jar 嗎?
uj5u.com熱心網友回復:
Spring Boot 2.7 支持的最低 Java 版本是 Java 8。因此jre8,默認情況下使用依賴項。在需要 Java 17 的 Spring Boot 3.0 中,jre17默認使用依賴項。如果您將 Java 17 與 Spring Boot 2.7 一起使用,則使用jre17依賴項沒有問題。
同樣,使用最新版本的驅動程式11.2.1有問題嗎?
應該沒有問題。Spring Boot 2.7 使用 10.2.x 的 MSSQL 驅動程式,因為 10.2.x 是 Spring Boot 2.7 發布時可用的最新版本。Spring Boot 的維護策略是,Spring Boot 的維護版本不會升級到新的次要或主要版本的依賴項。即將發布的 Spring Boot 3.0 已經升級到 11.2.x。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/531731.html
標籤:爪哇弹簧靴java-8mssql-jdbcjava-17
下一篇:將驗證注釋組合成單個注釋
