mirror of
https://github.com/fankes/moshi.git
synced 2025-10-18 23:49:21 +08:00
Update to JDK 17 (#1394)
Everything still targets JDK 8 (non-records) or JDK 16 (records only)
This commit is contained in:
10
.github/workflows/build.yml
vendored
10
.github/workflows/build.yml
vendored
@@ -10,8 +10,6 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
java-version:
|
|
||||||
- 16
|
|
||||||
use-ksp: [ true, false ]
|
use-ksp: [ true, false ]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@@ -27,19 +25,19 @@ jobs:
|
|||||||
- uses: actions/cache@v2
|
- uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ~/.gradle/caches
|
path: ~/.gradle/caches
|
||||||
key: ${{ runner.os }}-gradle-${{ matrix.java-version }}-${{ hashFiles('checksum.txt') }}
|
key: ${{ runner.os }}-gradle-${{ hashFiles('checksum.txt') }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-gradle-${{ matrix.java-version }}-
|
${{ runner.os }}-gradle-
|
||||||
|
|
||||||
- name: Configure JDK
|
- name: Configure JDK
|
||||||
uses: actions/setup-java@v2
|
uses: actions/setup-java@v2
|
||||||
with:
|
with:
|
||||||
distribution: 'zulu'
|
distribution: 'zulu'
|
||||||
java-version: ${{ matrix.java-version }}
|
java-version: '17'
|
||||||
|
|
||||||
- name: Test
|
- name: Test
|
||||||
run: ./gradlew build check --stacktrace -PuseKsp=${{ matrix.use-ksp }}
|
run: ./gradlew build check --stacktrace -PuseKsp=${{ matrix.use-ksp }}
|
||||||
|
|
||||||
- name: Publish (default branch only)
|
- name: Publish (default branch only)
|
||||||
if: github.repository == 'square/moshi' && github.ref == 'refs/heads/master' && matrix.java-version == '16'
|
if: github.repository == 'square/moshi' && github.ref == 'refs/heads/master'
|
||||||
run: ./gradlew publish -PmavenCentralUsername=${{ secrets.SONATYPE_NEXUS_USERNAME }} -PmavenCentralPassword=${{ secrets.SONATYPE_NEXUS_PASSWORD }}
|
run: ./gradlew publish -PmavenCentralUsername=${{ secrets.SONATYPE_NEXUS_USERNAME }} -PmavenCentralPassword=${{ secrets.SONATYPE_NEXUS_PASSWORD }}
|
||||||
|
@@ -112,7 +112,7 @@ subprojects {
|
|||||||
pluginManager.withPlugin("java") {
|
pluginManager.withPlugin("java") {
|
||||||
configure<JavaPluginExtension> {
|
configure<JavaPluginExtension> {
|
||||||
toolchain {
|
toolchain {
|
||||||
languageVersion.set(JavaLanguageVersion.of(16))
|
languageVersion.set(JavaLanguageVersion.of(17))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (project.name != "records-tests") {
|
if (project.name != "records-tests") {
|
||||||
|
@@ -29,9 +29,10 @@ val java16 by sourceSets.creating {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tasks.named<JavaCompile>("compileJava16Java") {
|
tasks.named<JavaCompile>("compileJava16Java") {
|
||||||
|
// We use JDK 17 for latest but target 16 for maximum compatibility
|
||||||
javaCompiler.set(
|
javaCompiler.set(
|
||||||
javaToolchains.compilerFor {
|
javaToolchains.compilerFor {
|
||||||
languageVersion.set(JavaLanguageVersion.of(16))
|
languageVersion.set(JavaLanguageVersion.of(17))
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
options.release.set(16)
|
options.release.set(16)
|
||||||
|
@@ -18,7 +18,14 @@ plugins {
|
|||||||
`java-library`
|
`java-library`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
toolchain {
|
||||||
|
languageVersion.set(JavaLanguageVersion.of(17))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
tasks.withType<JavaCompile>().configureEach {
|
tasks.withType<JavaCompile>().configureEach {
|
||||||
|
// Target 16 to ensure minimum compatibility
|
||||||
options.release.set(16)
|
options.release.set(16)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user