[CALCITE-4829] Bump Gradle to 7.2 and test with Java 17 at GitHub Actions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 671d2e1..da4d876 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -148,23 +148,23 @@
 
   mac:
     if: github.event.action != 'labeled'
-    name: 'macOS (JDK 15)'
+    name: 'macOS (JDK 17)'
     runs-on: macos-latest
     steps:
       - uses: actions/checkout@v2
         with:
           fetch-depth: 50
-      - name: 'Set up JDK 15'
+      - name: 'Set up JDK 17'
         uses: actions/setup-java@v1
         with:
-          java-version: 15
+          java-version: 17
       - uses: burrunan/gradle-cache-action@v1
         name: Test
         env:
           S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }}
           S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }}
         with:
-          job-id: jdk15
+          job-id: jdk17
           remote-build-cache-proxy-enabled: false
           arguments: --scan --no-parallel --no-daemon build javadoc
       - name: 'sqlline and sqllsh'
diff --git a/appveyor.yml b/appveyor.yml
index dfb0ca1..bf15cbc 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -39,7 +39,7 @@
 environment:
   matrix:
     - JAVA_HOME: C:\Program Files\Java\jdk1.8.0
-    - JAVA_HOME: C:\Program Files\Java\jdk15
+    - JAVA_HOME: C:\Program Files\Java\jdk17
 build_script:
   - ./gradlew assemble javadoc
 test_script:
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index 87f64a4..4546221 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -52,12 +52,6 @@
         apply(plugin = "org.gradle.kotlin.kotlin-dsl")
     }
 
-    plugins.withType<KotlinDslPlugin> {
-        configure<KotlinDslPluginOptions> {
-            experimentalWarning.set(false)
-        }
-    }
-
     tasks.withType<KotlinCompile> {
         sourceCompatibility = "unused"
         targetCompatibility = "unused"
diff --git a/buildSrc/gradle.properties b/buildSrc/gradle.properties
index c297078..767eb7a 100644
--- a/buildSrc/gradle.properties
+++ b/buildSrc/gradle.properties
@@ -16,7 +16,6 @@
 #
 org.gradle.parallel=true
 kotlin.code.style=official
-kotlin.parallel.tasks.in.project=true
 
 # Plugins
 com.github.autostyle.version=3.0
diff --git a/core/build.gradle.kts b/core/build.gradle.kts
index 8f9a3e0..a7fc20d 100644
--- a/core/build.gradle.kts
+++ b/core/build.gradle.kts
@@ -156,6 +156,11 @@
     packageName.set("org.apache.calcite.sql.parser.impl")
 }
 
+tasks.compileKotlin {
+    dependsOn(versionClass)
+    dependsOn(javaCCMain)
+}
+
 val fmppTest by tasks.registering(org.apache.calcite.buildtools.fmpp.FmppTask::class) {
     config.set(file("src/test/codegen/config.fmpp"))
     templates.set(file("src/main/codegen/templates"))
@@ -170,6 +175,10 @@
     packageName.set("org.apache.calcite.sql.parser.parserextensiontesting")
 }
 
+tasks.compileTestKotlin {
+    dependsOn(javaCCTest)
+}
+
 ide {
     fun generatedSource(javacc: TaskProvider<org.apache.calcite.buildtools.javacc.JavaCCTask>, sourceSet: String) =
         generatedJavaSources(javacc.get(), javacc.get().output.get().asFile, sourceSets.named(sourceSet))
diff --git a/example/csv/build.gradle.kts b/example/csv/build.gradle.kts
index 909ae32..5873a0e 100644
--- a/example/csv/build.gradle.kts
+++ b/example/csv/build.gradle.kts
@@ -33,6 +33,7 @@
     testImplementation("sqlline:sqlline")
     testImplementation(project(":testkit"))
 
+    sqllineClasspath(project)
     sqllineClasspath(files(sourceSets.test.map { it.output }))
 }
 
diff --git a/gradle.properties b/gradle.properties
index 3970b09..58d29ec 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -23,7 +23,6 @@
 # See https://github.com/gradle/gradle/pull/11358 , https://issues.apache.org/jira/browse/INFRA-14923
 # repository.apache.org does not yet support .sha256 and .sha512 checksums
 systemProp.org.gradle.internal.publish.checksums.insecure=true
-kotlin.parallel.tasks.in.project=true
 
 # This is version for Calcite itself
 # Note: it should not include "-SNAPSHOT" as it is automatically added by build.gradle.kts
@@ -52,7 +51,7 @@
 com.github.vlsi.vlsi-release-plugins.version=1.72
 com.google.protobuf.version=0.8.10
 de.thetaphi.forbiddenapis.version=3.1
-kotlin.version=1.3.50
+kotlin.version=1.5.31
 net.ltgt.errorprone.version=1.3.0
 me.champeau.gradle.jmh.version=0.5.0
 org.jetbrains.gradle.plugin.idea-ext.version=0.5
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index f2aae39..58304d7 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -16,7 +16,7 @@
 #
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionSha256Sum=7faa7198769f872826c8ef4f1450f839ec27f0b4d5d1e51bade63667cbccd205
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip
+distributionSha256Sum=f581709a9c35e9cb92e16f585d2c4bc99b2b1a5f85d2badbd3dc6bff59e1e6dd
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
diff --git a/ubenchmark/build.gradle.kts b/ubenchmark/build.gradle.kts
index ef550b6..ffaa8cb 100644
--- a/ubenchmark/build.gradle.kts
+++ b/ubenchmark/build.gradle.kts
@@ -19,9 +19,7 @@
 }
 
 dependencies {
-    // Make jmhCompileClasspath resolvable
-    @Suppress("DEPRECATION")
-    jmhCompileClasspath(platform(project(":bom")))
+    jmhImplementation(platform(project(":bom")))
     jmhImplementation(project(":core"))
     jmhImplementation(project(":linq4j"))
     jmhImplementation("com.google.guava:guava")