diff --git a/lib/java/build.gradle b/lib/java/build.gradle
index 726d7b7..3e750fd 100644
--- a/lib/java/build.gradle
+++ b/lib/java/build.gradle
@@ -39,7 +39,7 @@
     id 'java-library'
     id 'maven'
     id 'signing'
-    id 'com.github.johnrengelman.shadow' version '4.0.4'
+    id 'com.github.johnrengelman.shadow' version '6.1.0'
     id "com.github.spotbugs" version "4.7.1"
     id "com.diffplug.spotless" version "6.4.2"
 }
diff --git a/lib/java/gradle/environment.gradle b/lib/java/gradle/environment.gradle
index 2f49a0d..224f10f 100644
--- a/lib/java/gradle/environment.gradle
+++ b/lib/java/gradle/environment.gradle
@@ -64,14 +64,14 @@
 }
 
 dependencies {
-    compile "org.slf4j:slf4j-api:${slf4jVersion}"
-    compile "org.apache.httpcomponents:httpclient:${httpclientVersion}"
-    compile "org.apache.httpcomponents:httpcore:${httpcoreVersion}"
-    compile "javax.servlet:javax.servlet-api:${servletVersion}"
-    compile "javax.annotation:javax.annotation-api:${javaxAnnotationVersion}"
-    compile "org.apache.commons:commons-lang3:3.12.0"
+    implementation "org.slf4j:slf4j-api:${slf4jVersion}"
+    implementation "org.apache.httpcomponents:httpclient:${httpclientVersion}"
+    implementation "org.apache.httpcomponents:httpcore:${httpcoreVersion}"
+    implementation "javax.servlet:javax.servlet-api:${servletVersion}"
+    implementation "javax.annotation:javax.annotation-api:${javaxAnnotationVersion}"
+    implementation "org.apache.commons:commons-lang3:3.12.0"
 
     testImplementation "org.junit.jupiter:junit-jupiter:${junitVersion}"
-    testCompile "org.mockito:mockito-all:${mockitoVersion}"
-    testRuntime "org.slf4j:slf4j-log4j12:${slf4jVersion}"
+    testImplementation "org.mockito:mockito-all:${mockitoVersion}"
+    testRuntimeOnly "org.slf4j:slf4j-log4j12:${slf4jVersion}"
 }
diff --git a/lib/java/gradle/functionalTests.gradle b/lib/java/gradle/functionalTests.gradle
index 15737f5..e8a3e89 100644
--- a/lib/java/gradle/functionalTests.gradle
+++ b/lib/java/gradle/functionalTests.gradle
@@ -34,15 +34,27 @@
     }
 }
 
+// see https://docs.gradle.org/current/userguide/java_library_plugin.html
+// 1. defines cross test implementation that includes all test implementation, which in turn
+//    contains all implementation dependencies
+// 2. defines cross test runtime that further includes test runtime only dependencies
+// 3. the cross test implementation will need to depends on main and test output
+// 4. shadow jar will package both main and test source set, along with cross test runtime dependencies
 configurations {
-    crossTestCompile { extendsFrom testCompile }
-    crossTestRuntime { extendsFrom crossTestCompile, testRuntime }
+    crossTestImplementation {
+        description "implementation for cross test"
+        extendsFrom testImplementation
+    }
+    crossTestRuntime {
+        description "runtime dependencies for cross test"
+        extendsFrom crossTestImplementation, testRuntimeOnly
+    }
 }
 
 dependencies {
-    crossTestCompile "org.apache.tomcat.embed:tomcat-embed-core:${tomcatEmbedVersion}"
-    crossTestCompile sourceSets.main.output
-    crossTestCompile sourceSets.test.output
+    crossTestImplementation "org.apache.tomcat.embed:tomcat-embed-core:${tomcatEmbedVersion}"
+    crossTestImplementation sourceSets.main.output
+    crossTestImplementation sourceSets.test.output
 }
 
 // I am using shadow plugin to make a self contained functional test Uber JAR that
@@ -53,19 +65,17 @@
     description = 'Assemble a test JAR file for cross-check execution'
     // make sure the runners are created when this runs
     dependsOn 'generateRunnerScriptForClient', 'generateRunnerScriptForServer', 'generateRunnerScriptForNonblockingServer', 'generateRunnerScriptForTServletServer'
-
-    baseName = 'functionalTest'
-    destinationDir = file("$buildDir/functionalTestJar")
-    classifier = null
-
+    archiveBaseName.set('functionalTest')
+    destinationDirectory = file("$buildDir/functionalTestJar")
+    archiveClassifier.set(null)
     // We do not need a version number for this internal jar
-    version = null
-
+    archiveVersion.set(null)
     // Bundle the complete set of unit test classes including generated code
     // and the runtime dependencies in one JAR to expedite execution.
+    // see https://imperceptiblethoughts.com/shadow/custom-tasks/
     from sourceSets.test.output
     from sourceSets.crossTest.output
-    configurations = [project.configurations.testRuntime]
+    configurations = [project.configurations.crossTestRuntime]
 }
 
 // Common script runner configuration elements
diff --git a/lib/js/test/build.xml b/lib/js/test/build.xml
index 833e5bd..db85012 100755
--- a/lib/js/test/build.xml
+++ b/lib/js/test/build.xml
@@ -45,9 +45,6 @@
       <exclude name="libthrift*javadoc.jar" />
       <exclude name="libthrift*sources.jar" />
     </fileset>
-    <fileset dir="${thrift.java.dir}/build/deps">
-      <include name="*.jar" />
-    </fileset>
     <fileset dir="${build}/lib">
       <include name="*.jar" />
     </fileset>
@@ -235,6 +232,7 @@
       <dependency groupId="org.apache.httpcomponents" artifactId="httpclient" version="4.0.1"/>
       <dependency groupId="com.googlecode.jslint4java" artifactId="jslint4java-ant" version="1.4.6"/>
       <dependency groupId="eu.medsea.mimeutil" artifactId="mime-util" version="2.1.3"/>
+      <dependency groupId="javax.annotation" artifactId="javax.annotation-api" version="1.3.2"/>
       <remoteRepository url="${mvn.repo}"/>
     </artifact:dependencies>
 
diff --git a/lib/kotlin/cross-test-client/build.gradle.kts b/lib/kotlin/cross-test-client/build.gradle.kts
index e5f87dd..5090de9 100644
--- a/lib/kotlin/cross-test-client/build.gradle.kts
+++ b/lib/kotlin/cross-test-client/build.gradle.kts
@@ -28,15 +28,26 @@
     mavenCentral()
 }
 
+val slf4jVersion: String by project
+val httpclientVersion: String by project
+val httpcoreVersion: String by project
+val logbackVersion: String by project
+val kotlinxCoroutinesJdk8Version: String by project
+
 dependencies {
     implementation(platform("org.jetbrains.kotlin:kotlin-bom"))
     implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
     // https://mvnrepository.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-jdk8
-    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:1.6.1")
+    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:$kotlinxCoroutinesJdk8Version")
     // https://mvnrepository.com/artifact/org.apache.thrift/libthrift
     implementation("org.apache.thrift:libthrift:INCLUDED")
+    implementation("org.slf4j:slf4j-api:$slf4jVersion")
+    implementation("org.apache.httpcomponents:httpclient:$httpclientVersion")
+    implementation("org.apache.httpcomponents:httpcore:$httpcoreVersion")
     // https://mvnrepository.com/artifact/ch.qos.logback/logback-classic
-    implementation("ch.qos.logback:logback-classic:1.3.0-alpha14")
+    implementation("ch.qos.logback:logback-classic:$logbackVersion")
+    testImplementation("org.jetbrains.kotlin:kotlin-test")
+    testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
 }
 
 tasks {
diff --git a/lib/kotlin/cross-test-server/build.gradle.kts b/lib/kotlin/cross-test-server/build.gradle.kts
index 8a654d9..2246fae 100644
--- a/lib/kotlin/cross-test-server/build.gradle.kts
+++ b/lib/kotlin/cross-test-server/build.gradle.kts
@@ -28,15 +28,24 @@
     mavenCentral()
 }
 
+val slf4jVersion: String by project
+val httpcoreVersion: String by project
+val logbackVersion: String by project
+val kotlinxCoroutinesJdk8Version: String by project
+
 dependencies {
     implementation(platform("org.jetbrains.kotlin:kotlin-bom"))
     implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
     // https://mvnrepository.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-jdk8
-    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:1.6.1")
+    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:$kotlinxCoroutinesJdk8Version")
     // https://mvnrepository.com/artifact/org.apache.thrift/libthrift
     implementation("org.apache.thrift:libthrift:INCLUDED")
+    implementation("org.slf4j:slf4j-api:$slf4jVersion")
+    implementation("org.apache.httpcomponents:httpcore:$httpcoreVersion")
     // https://mvnrepository.com/artifact/ch.qos.logback/logback-classic
-    implementation("ch.qos.logback:logback-classic:1.3.0-alpha14")
+    implementation("ch.qos.logback:logback-classic:$logbackVersion")
+    testImplementation("org.jetbrains.kotlin:kotlin-test")
+    testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
 }
 
 tasks {
diff --git a/lib/kotlin/gradle.properties b/lib/kotlin/gradle.properties
new file mode 100644
index 0000000..0cba9be
--- /dev/null
+++ b/lib/kotlin/gradle.properties
@@ -0,0 +1,23 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+slf4jVersion=1.7.35
+httpcoreVersion=4.4.15
+httpclientVersion=4.5.13
+logbackVersion=1.3.0-alpha14
+kotlinxCoroutinesJdk8Version=1.6.1
