55 "@rules_android//providers:providers.bzl" ,
66 "AndroidLibraryResourceClassJarProvider" ,
77)
8- load (
9- "@rules_java//java:defs.bzl" ,
10- "JavaInfo" ,
11- )
8+ load ("@rules_java//java:defs.bzl" , "JavaInfo" , "java_common" )
129load (
1310 ":collect_aar_outputs_aspect.bzl" ,
1411 _AndroidLintAARInfo = "AndroidLintAARInfo" ,
@@ -45,7 +42,9 @@ def _run_android_lint(
4542 autofix ,
4643 regenerate ,
4744 android_lint_enable_check_dependencies ,
48- android_lint_skip_bytecode_verifier ):
45+ android_lint_skip_bytecode_verifier ,
46+ android_lint_toolchain ,
47+ java_runtime_info ):
4948 """Constructs the Android Lint actions
5049
5150 Args:
@@ -71,6 +70,8 @@ def _run_android_lint(
7170 regenerate: Whether to regenerate the baseline files
7271 android_lint_enable_check_dependencies: Enables dependency checking during analysis
7372 android_lint_skip_bytecode_verifier: Disables bytecode verification
73+ android_lint_toolchain: The android lint toolchain
74+ java_runtime_info: The java runtime toolchain info
7475 """
7576 inputs = []
7677 outputs = [output ]
@@ -135,9 +136,12 @@ def _run_android_lint(
135136 args .add ("--output" , output )
136137 outputs .append (output )
137138
138- toolchain = _utils .get_android_lint_toolchain (ctx )
139- if toolchain .android_home != None :
140- args .add ("--android-home" , toolchain .android_home .label .workspace_root )
139+ if android_lint_toolchain .android_home != None :
140+ args .add ("--android-home" , android_lint_toolchain .android_home .label .workspace_root )
141+
142+ if java_runtime_info :
143+ args .add ("--jdk-home" , java_runtime_info .java_home )
144+ inputs .extend (java_runtime_info .files .to_list ())
141145
142146 ctx .actions .run (
143147 mnemonic = "AndroidLint" ,
@@ -248,6 +252,8 @@ def process_android_lint_issues(ctx, regenerate):
248252 regenerate = regenerate ,
249253 android_lint_enable_check_dependencies = _utils .get_android_lint_toolchain (ctx ).android_lint_enable_check_dependencies ,
250254 android_lint_skip_bytecode_verifier = _utils .get_android_lint_toolchain (ctx ).android_lint_skip_bytecode_verifier ,
255+ android_lint_toolchain = _utils .get_android_lint_toolchain (ctx ),
256+ java_runtime_info = ctx .attr ._javabase [java_common .JavaRuntimeInfo ],
251257 )
252258
253259 return struct (
0 commit comments