Update default_java_toolchain.bzl to match Bazel@head version.
diff --git a/toolchains/default_java_toolchain.bzl b/toolchains/default_java_toolchain.bzl index e5f4443..343adaf 100644 --- a/toolchains/default_java_toolchain.bzl +++ b/toolchains/default_java_toolchain.bzl
@@ -1,4 +1,4 @@ -# Copyright 2021 The Bazel Authors. All rights reserved. +# Copyright 2022 The Bazel Authors. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -42,19 +42,15 @@ "-Dsun.io.useCanonCaches=false", ] -JDK9_JVM_OPTS = BASE_JDK9_JVM_OPTS + [ - # override the javac in the JDK. - "--patch-module=java.compiler=$(location @remote_java_tools//:java_compiler_jar)", - "--patch-module=jdk.compiler=$(location @remote_java_tools//:jdk_compiler_jar)", -] +JDK9_JVM_OPTS = BASE_JDK9_JVM_OPTS DEFAULT_JAVACOPTS = [ "-XDskipDuplicateBridges=true", "-XDcompilePolicy=simple", "-g", "-parameters", - # https://github.com/bazelbuild/java_tools/issues/51#issuecomment-927940699 - "-XepOpt:ReturnValueIgnored:ObjectMethods=false", + # https://github.com/bazelbuild/bazel/issues/15219 + "-Xep:ReturnValueIgnored:OFF", ] # java_toolchain parameters without specifying javac, java.compiler, @@ -90,10 +86,6 @@ # Turbine is not a worker and parallel GC is faster for short-lived programs. "-XX:+UseParallelOldGC", ], - tools = [ - "@remote_java_tools//:java_compiler_jar", - "@remote_java_tools//:jdk_compiler_jar", - ], java_runtime = "//toolchains:remote_jdk11", ) @@ -129,10 +121,6 @@ # Turbine is not a worker and parallel GC is faster for short-lived programs. "-XX:+UseParallelOldGC", ], - tools = [ - "@remote_java_tools//:java_compiler_jar", - "@remote_java_tools//:jdk_compiler_jar", - ], ijar = ["//toolchains:ijar_prebuilt_binary"], singlejar = ["//toolchains:prebuilt_singlejar"], java_runtime = "//toolchains:remote_jdk11", @@ -148,10 +136,6 @@ # Turbine is not a worker and parallel GC is faster for short-lived programs. "-XX:+UseParallelOldGC", ], - tools = [ - "@remote_java_tools//:java_compiler_jar", - "@remote_java_tools//:jdk_compiler_jar", - ], ijar = ["@remote_java_tools//:ijar_cc_binary"], singlejar = ["@remote_java_tools//:singlejar_cc_bin"], java_runtime = "//toolchains:remote_jdk11", @@ -206,16 +190,7 @@ def _bootclasspath_impl(ctx): host_javabase = ctx.attr.host_javabase[java_common.JavaRuntimeInfo] - # explicitly list output files instead of using TreeArtifact to work around - # https://github.com/bazelbuild/bazel/issues/6203 - classes = [ - "DumpPlatformClassPath.class", - ] - - class_outputs = [ - ctx.actions.declare_file("%s_classes/%s" % (ctx.label.name, clazz)) - for clazz in classes - ] + class_dir = ctx.actions.declare_directory("%s_classes" % ctx.label.name) args = ctx.actions.args() args.add("-source") @@ -226,20 +201,20 @@ args.add("-cp") args.add("%s/lib/tools.jar" % host_javabase.java_home) args.add("-d") - args.add(class_outputs[0].dirname) + args.add_all([class_dir], expand_directories = False) args.add(ctx.file.src) ctx.actions.run( executable = "%s/bin/javac" % host_javabase.java_home, mnemonic = "JavaToolchainCompileClasses", inputs = [ctx.file.src] + ctx.files.host_javabase, - outputs = class_outputs, + outputs = [class_dir], arguments = [args], ) bootclasspath = ctx.outputs.output_jar - inputs = class_outputs + ctx.files.host_javabase + inputs = [class_dir] + ctx.files.host_javabase args = ctx.actions.args() args.add("-XX:+IgnoreUnrecognizedVMOptions") @@ -248,8 +223,9 @@ args.add("--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED") args.add_joined( "-cp", - [class_outputs[0].dirname, "%s/lib/tools.jar" % host_javabase.java_home], + [class_dir, "%s/lib/tools.jar" % host_javabase.java_home], join_with = ctx.configuration.host_path_separator, + expand_directories = False, ) args.add("DumpPlatformClassPath") args.add(bootclasspath) @@ -277,7 +253,6 @@ cfg = "exec", providers = [java_common.JavaRuntimeInfo], ), - "output_jar": attr.output(mandatory = True), "src": attr.label( cfg = "exec", allow_single_file = True, @@ -285,6 +260,7 @@ "target_javabase": attr.label( providers = [java_common.JavaRuntimeInfo], ), + "output_jar": attr.output(mandatory = True), }, )