diff --git a/.bazelrc b/.bazelrc index 4a89eed7c9..d6d4ce6cd3 100644 --- a/.bazelrc +++ b/.bazelrc @@ -3,6 +3,7 @@ build --repository_cache=~/.gerritcodereview/bazel-cache/repository build --experimental_strict_action_env build --action_env=PATH build --disk_cache=~/.gerritcodereview/bazel-cache/cas +build --java_toolchain //tools:error_prone_warnings_toolchain test --build_tests_only test --test_output=errors diff --git a/Documentation/dev-bazel.txt b/Documentation/dev-bazel.txt index d3da0d4306..1420f652ad 100644 --- a/Documentation/dev-bazel.txt +++ b/Documentation/dev-bazel.txt @@ -219,10 +219,11 @@ The output JAR file will be be placed in: Note that when building an individual plugin, the `core.zip` package is not regenerated. +By default, a limited set of Error Prone errors and warnings are enabled. To build with all Error Prone warnings activated, run: ---- - bazel build --java_toolchain //tools:error_prone_warnings_toolchain //... + bazel build --java_toolchain //tools:full_error_prone_warnings_toolchain //... ---- diff --git a/tools/BUILD b/tools/BUILD index 6266456bd4..5465a904ed 100644 --- a/tools/BUILD +++ b/tools/BUILD @@ -23,10 +23,31 @@ default_java_toolchain( visibility = ["//visibility:public"], ) +default_java_toolchain( + name = "full_error_prone_warnings_toolchain", + bootclasspath = ["@bazel_tools//tools/jdk:platformclasspath.jar"], + jvm_opts = JDK9_JVM_OPTS, + package_configuration = [ + ":full_error_prone", + ], + visibility = ["//visibility:public"], +) + +# Error Prone errors and warnings enabled by default; see ../.bazelrc for how +# this is enabled. +java_package_configuration( + name = "error_prone", + javacopts = [ + "-XepDisableWarningsInGeneratedCode", + "-Xep:WildcardImport:ERROR", + ], + packages = ["error_prone_packages"], +) + # This EP warnings list is based on: # https://github.com/bazelbuild/BUILD_file_generator/blob/master/tools/bazel_defs/java.bzl java_package_configuration( - name = "error_prone", + name = "full_error_prone", javacopts = [ "-XepDisableWarningsInGeneratedCode", "-Xep:MissingCasesInEnumSwitch:ERROR",