blob: 9572776172bc5777e02afed3f1b47bf61de19a00 [file] [edit]
load(
"@contrib_rules_jvm//java:defs.bzl",
_java_library = "java_library",
)
def java_library(
name,
deps = [],
srcs = [],
resources = [],
exports = [],
tags = [],
visibility = None,
javacopts = [],
plugins = [],
**kwargs):
# NullAway configuration
nullaway_plugins = select({
"//java:use_nullaway_level_warn": [
"//java:nullaway",
],
"//java:use_nullaway_level_error": [
"//java:nullaway",
],
"//conditions:default": [],
})
nullaway_javacopts = select({
"//java:use_nullaway_level_warn": [
"-Xep:NullAway:WARN",
"-XepOpt:NullAway:AnnotatedPackages=org.openqa.selenium",
],
"//java:use_nullaway_level_error": [
"-Xep:NullAway:ERROR",
"-XepOpt:NullAway:AnnotatedPackages=org.openqa.selenium",
],
"//conditions:default": [],
})
# global place for NullAway plugin use
_java_library(
name = name,
deps = deps,
srcs = srcs,
resources = resources + ["//:legal-stuff"],
exports = exports,
tags = tags,
visibility = visibility,
plugins = plugins + nullaway_plugins,
javacopts = javacopts + nullaway_javacopts,
**kwargs
)