+def cloverInstrDir = file("$buildDir/$cloverSourcesInstrDir")
+def classes = "$jalviewDir/$classesDir"
+
+if (clover.equals("true")) {
+ use_clover = true
+ classes = "$buildDir/$cloverClassesDir"
+} else {
+ use_clover = false
+ classes = "$jalviewDir/$classesDir"
+}
+
+// configure classpath/args for j8/j11 compilation
+
+def jalviewDirAbsolutePath = file(jalviewDir).getAbsolutePath()
+def libDir
+def libDistDir
+def compile_source_compatibility
+def compile_target_compatibility
+
+ext {
+ // where the getdown channel will be built.
+ // TODO: consider allowing this expression to be overridden by -P arg
+ getdownWebsiteDir = jalviewDir + '/' + getdown_website_dir + '/' + JAVA_VERSION
+ getdownAppDir = getdownWebsiteDir + '/' + getdown_app_dir
+ //getdownJ11libDir = getdownWebsiteDir + '/' + getdown_j11lib_dir
+ getdownResourceDir = getdownWebsiteDir + '/' + getdown_resource_dir
+ getdownLauncher = jalviewDir + '/' + getdown_launcher
+ getdownFilesDir = jalviewDir + '/' + getdown_files_dir + '/' + JAVA_VERSION + '/'
+ getdown_app_base = getdown_channel_base+"/"+getdown_channel_name+"/"+JAVA_VERSION+"/"
+ modules_compileClasspath = fileTree(dir: "$jalviewDir/$j11modDir", include: ["*.jar"])
+ modules_runtimeClasspath = modules_compileClasspath
+ gitHash = ""
+ gitBranch = ""
+}
+
+def JAVA_INTEGER_VERSION
+def additional_compiler_args = []
+// these are getdown.txt properties defined dependent on the JAVA_VERSION
+def getdown_alt_java_min_version
+// this property is assigned below and expanded to multiple lines in the getdown task
+def getdown_alt_multi_java_location
+// this property is for the Java library used in eclipse
+def eclipse_java_runtime_name
+if (JAVA_VERSION.equals("1.8")) {
+ JAVA_INTEGER_VERSION = "8"
+ //libDir = j8libDir
+ libDir = j11libDir
+ libDistDir = j8libDir
+ compile_source_compatibility = 1.8
+ compile_target_compatibility = 1.8
+ getdown_alt_java_min_version = getdown_alt_java8_min_version
+ getdown_alt_multi_java_location = getdown_alt_java8_txt_multi_java_location
+ eclipse_java_runtime_name = "JavaSE-1.8"
+} else if (JAVA_VERSION.equals("11")) {
+ JAVA_INTEGER_VERSION = "11"
+ libDir = j11libDir
+ libDistDir = j11libDir
+ compile_source_compatibility = 11
+ compile_target_compatibility = 11
+ getdown_alt_java_min_version = getdown_alt_java11_min_version
+ getdown_alt_multi_java_location = getdown_alt_java11_txt_multi_java_location
+ eclipse_java_runtime_name = "JavaSE-11"
+ additional_compiler_args += [
+ '--module-path', ext.modules_compileClasspath.asPath,
+ '--add-modules', j11modules
+ ]
+} else if (JAVA_VERSION.equals("12") || JAVA_VERSION.equals("13")) {
+ JAVA_INTEGER_VERSION = JAVA_VERSION
+ libDir = j11libDir
+ libDistDir = j11libDir
+ compile_source_compatibility = JAVA_VERSION
+ compile_target_compatibility = JAVA_VERSION
+ getdown_alt_java_min_version = getdown_alt_java11_min_version
+ getdown_alt_multi_java_location = getdown_alt_java11_txt_multi_java_location
+ eclipse_java_runtime_name = "JavaSE-11"
+ additional_compiler_args += [
+ '--module-path', ext.modules_compileClasspath.asPath,
+ '--add-modules', j11modules
+ ]
+} else {
+ throw new GradleException("JAVA_VERSION=$JAVA_VERSION not currently supported by Jalview")
+}