Update `rules_java v8.5.0`

Closes #24391.

PiperOrigin-RevId: 698301966
Change-Id: I004ae10070354f7f565778a58a1d97be234f55c0
diff --git a/MODULE.bazel b/MODULE.bazel
index 652a0e0..8c0d141 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -25,7 +25,7 @@
 bazel_dep(name = "blake3", version = "1.5.1.bcr.1")
 bazel_dep(name = "zlib", version = "1.3.1.bcr.3")
 bazel_dep(name = "rules_cc", version = "0.0.16")
-bazel_dep(name = "rules_java", version = "8.3.2")
+bazel_dep(name = "rules_java", version = "8.5.0")
 bazel_dep(name = "rules_graalvm", version = "0.11.1")
 bazel_dep(name = "rules_proto", version = "7.0.2")
 bazel_dep(name = "rules_jvm_external", version = "6.0")
diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock
index e0ad5b3..8cf25e7 100644
--- a/MODULE.bazel.lock
+++ b/MODULE.bazel.lock
@@ -161,7 +161,8 @@
     "https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe",
     "https://bcr.bazel.build/modules/rules_java/7.6.5/MODULE.bazel": "481164be5e02e4cab6e77a36927683263be56b7e36fef918b458d7a8a1ebadb1",
     "https://bcr.bazel.build/modules/rules_java/8.3.2/MODULE.bazel": "7336d5511ad5af0b8615fdc7477535a2e4e723a357b6713af439fe8cf0195017",
-    "https://bcr.bazel.build/modules/rules_java/8.3.2/source.json": "76aeec36622f7ff942e691352a548d3cc808c9dc6c195120d06ef7e4f0632992",
+    "https://bcr.bazel.build/modules/rules_java/8.5.0/MODULE.bazel": "c081eda83625b6d97144f2da9dd5f074ecd56ba10f238257e7a90f56ee8a9c3c",
+    "https://bcr.bazel.build/modules/rules_java/8.5.0/source.json": "8aa0f3979d4c41e8575581e877eb2073a922c8f056fe74a67ca12eabf9e58715",
     "https://bcr.bazel.build/modules/rules_jvm_external/6.0/MODULE.bazel": "37c93a5a78d32e895d52f86a8d0416176e915daabd029ccb5594db422e87c495",
     "https://bcr.bazel.build/modules/rules_jvm_external/6.0/source.json": "73cc8818203a182e7374adf137f428d276190b2e2bef3022c231990cf0e594aa",
     "https://bcr.bazel.build/modules/rules_kotlin/1.9.0/MODULE.bazel": "ef85697305025e5a61f395d4eaede272a5393cee479ace6686dba707de804d59",
@@ -1313,45 +1314,25 @@
         ]
       }
     },
-    "@@rules_java+//java:extensions.bzl%compatibility_proxy": {
+    "@@rules_java+//java:rules_java_deps.bzl%compatibility_proxy": {
       "general": {
-        "bzlTransitiveDigest": "2vq8vV3s5K7xJklvOlDqsEdH8xUkaddQJ+6Ove5ZoZY=",
-        "usagesDigest": "oTMuZ87Uif8roeNCdLa40yt9GNy30+6DDYIXqCEjm7I=",
+        "bzlTransitiveDigest": "lUVy7PIyFpaJ2wPiT8duNgICcHp6qxghhds+CZ5ViXI=",
+        "usagesDigest": "gTu8Srf8G7tL645OdQBCe0C/Rg1drH4YKoQ4L8eL3K4=",
         "recordedFileInputs": {},
         "recordedDirentsInputs": {},
         "envVariables": {},
         "generatedRepoSpecs": {
           "compatibility_proxy": {
-            "bzlFile": "@@rules_java+//java:repositories.bzl",
+            "bzlFile": "@@rules_java+//java:rules_java_deps.bzl",
             "ruleClassName": "_compatibility_proxy_repo_rule",
             "attributes": {}
           }
         },
         "recordedRepoMappingEntries": [
           [
-            "bazel_features+",
-            "bazel_features_globals",
-            "bazel_features++version_extension+bazel_features_globals"
-          ],
-          [
-            "bazel_features+",
-            "bazel_features_version",
-            "bazel_features++version_extension+bazel_features_version"
-          ],
-          [
-            "rules_java+",
-            "bazel_features",
-            "bazel_features+"
-          ],
-          [
             "rules_java+",
             "bazel_tools",
             "bazel_tools"
-          ],
-          [
-            "rules_java+",
-            "remote_java_tools",
-            "rules_java++toolchains+remote_java_tools"
           ]
         ]
       }
diff --git a/src/MODULE.tools b/src/MODULE.tools
index ea751e1..249cff3 100644
--- a/src/MODULE.tools
+++ b/src/MODULE.tools
@@ -39,7 +39,7 @@
 # Dependencies used to auto-load removed symbols and rules from Bazel (due to Starlarkification)
 # See also:  --incompatible_autoload_externally, AutoloadSymbols
 bazel_dep(name = "protobuf", version = "29.0-rc3", repo_name = "com_google_protobuf")
-bazel_dep(name = "rules_java", version = "8.3.2")
+bazel_dep(name = "rules_java", version = "8.5.0")
 bazel_dep(name = "rules_cc", version = "0.0.16")
 bazel_dep(name = "rules_python", version = "0.36.0")
 bazel_dep(name = "rules_shell", version = "0.2.0")
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/mock/BazelAnalysisMock.java b/src/test/java/com/google/devtools/build/lib/analysis/mock/BazelAnalysisMock.java
index 3208ace..71ce932 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/mock/BazelAnalysisMock.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/mock/BazelAnalysisMock.java
@@ -223,7 +223,7 @@
         "embedded_tools/tools/jdk/BUILD",
         """
 load("@rules_java//java:defs.bzl",
-  "java_binary", "java_import", "java_toolchain")
+  "java_binary", "java_import", "java_toolchain", "java_runtime")
 load(
     ":java_toolchain_alias.bzl",
     "java_host_runtime_alias",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/AbstractMockJavaSupport.java b/src/test/java/com/google/devtools/build/lib/analysis/util/AbstractMockJavaSupport.java
index 765dc42..2c20bef 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/AbstractMockJavaSupport.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/AbstractMockJavaSupport.java
@@ -71,6 +71,45 @@
               load("@rules_java//java/bazel/rules:bazel_java_test.bzl", _java_test = "java_test")
               java_test = _java_test
               """);
+          config.overwrite(
+              "rules_java_workspace/java/toolchains/java_package_configuration.bzl",
+              """
+              load("@rules_java//java/common/rules:java_package_configuration.bzl",
+                _java_package_configuration = "java_package_configuration")
+              java_package_configuration = _java_package_configuration
+              """);
+          config.overwrite(
+              "rules_java_workspace/java/toolchains/java_runtime.bzl",
+              """
+              load("@rules_java//java/common/rules:java_runtime.bzl",
+                _java_runtime = "java_runtime")
+              java_runtime = _java_runtime
+              """);
+          config.overwrite(
+              "rules_java_workspace/java/toolchains/java_toolchain.bzl",
+              """
+              load("@rules_java//java/common/rules:java_toolchain.bzl",
+                _java_toolchain = "java_toolchain")
+              java_toolchain = _java_toolchain
+              """);
+          config.overwrite(
+              "rules_java_workspace/java/common/java_common.bzl",
+              """
+              load("@rules_java//java/private:java_common.bzl", _java_common = "java_common")
+              java_common = _java_common
+              """);
+          config.overwrite(
+              "rules_java_workspace/java/common/java_info.bzl",
+              """
+              load("@rules_java//java/private:java_info.bzl", _JavaInfo = "JavaInfo")
+              JavaInfo = _JavaInfo
+              """);
+          config.overwrite(
+              "rules_java_workspace/java/common/java_plugin_info.bzl",
+              """
+              load("@rules_java//java/private:java_info.bzl", _JavaPluginInfo = "JavaPluginInfo")
+              JavaPluginInfo = _JavaPluginInfo
+              """);
           // mocks
           config.create("rules_java_workspace/toolchains/BUILD");
           config.create(
diff --git a/src/test/shell/bazel/bazel_java_test.sh b/src/test/shell/bazel/bazel_java_test.sh
index 05cd4de..15a90cc 100755
--- a/src/test/shell/bazel/bazel_java_test.sh
+++ b/src/test/shell/bazel/bazel_java_test.sh
@@ -87,6 +87,10 @@
   rm -rf "$(bazel info bazel-bin)/java"
 }
 
+function set_up() {
+  add_rules_java MODULE.bazel
+}
+
 function write_hello_library_files() {
   mkdir -p java/main
   cat >java/main/BUILD <<EOF
@@ -229,6 +233,7 @@
 
 function write_java_custom_rule() {
   cat > java/com/google/sandwich/java_custom_library.bzl << EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
 def _impl(ctx):
   deps = [dep[java_common.provider] for dep in ctx.attr.deps]
   exports = [export[java_common.provider] for export in ctx.attr.exports]
@@ -414,6 +419,7 @@
 EOF
 
   cat >g/java_custom_library.bzl << EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
 def _impl(ctx):
   output_jar = ctx.actions.declare_file("lib" + ctx.label.name + ".jar")
 
@@ -484,6 +490,7 @@
 EOF
 
   cat >g/java_custom_library.bzl << EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
 def _impl(ctx):
   output_jar = ctx.actions.declare_file("lib" + ctx.label.name + ".jar")
 
@@ -1387,6 +1394,8 @@
 EOF
 
   cat > java/com/google/sandwich/java_custom_library.bzl << EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
+load("@rules_java//java/common:java_info.bzl", "JavaInfo")
 def _impl(ctx):
   compiled_jar = ctx.actions.declare_file("lib" + ctx.label.name + ".jar")
   imported_jar = ctx.files.jar[0];
@@ -1441,6 +1450,8 @@
 EOF
 
   cat > java/com/google/foo/my_rule.bzl << EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
+load("@rules_java//java/common:java_info.bzl", "JavaInfo")
 result = provider()
 def _impl(ctx):
   compile_jar = java_common.run_ijar(
diff --git a/src/test/shell/bazel/bazel_proto_library_test.sh b/src/test/shell/bazel/bazel_proto_library_test.sh
index ebe2d52..b3b9f55 100755
--- a/src/test/shell/bazel/bazel_proto_library_test.sh
+++ b/src/test/shell/bazel/bazel_proto_library_test.sh
@@ -24,6 +24,7 @@
 
 function set_up() {
   add_protobuf "MODULE.bazel"
+  add_rules_java "MODULE.bazel"
   # Enable disk cache to avoid compiling protobuf for each test.
   enable_disk_cache
 }
@@ -402,6 +403,8 @@
 EOF
 
   cat > java/proto/my_rule_with_aspect.bzl <<EOF
+load("@rules_java//java/common:java_common.bzl", "java_common")
+load("@rules_java//java/common:java_info.bzl", "JavaInfo")
 def _my_rule_impl(ctx):
   aspect_java_infos = []
   for dep in ctx.attr.deps:
diff --git a/src/test/tools/bzlmod/MODULE.bazel.lock b/src/test/tools/bzlmod/MODULE.bazel.lock
index 79a24cc..9a6f327 100644
--- a/src/test/tools/bzlmod/MODULE.bazel.lock
+++ b/src/test/tools/bzlmod/MODULE.bazel.lock
@@ -79,7 +79,8 @@
     "https://bcr.bazel.build/modules/rules_java/7.10.0/MODULE.bazel": "530c3beb3067e870561739f1144329a21c851ff771cd752a49e06e3dc9c2e71a",
     "https://bcr.bazel.build/modules/rules_java/7.2.0/MODULE.bazel": "06c0334c9be61e6cef2c8c84a7800cef502063269a5af25ceb100b192453d4ab",
     "https://bcr.bazel.build/modules/rules_java/8.3.2/MODULE.bazel": "7336d5511ad5af0b8615fdc7477535a2e4e723a357b6713af439fe8cf0195017",
-    "https://bcr.bazel.build/modules/rules_java/8.3.2/source.json": "76aeec36622f7ff942e691352a548d3cc808c9dc6c195120d06ef7e4f0632992",
+    "https://bcr.bazel.build/modules/rules_java/8.5.0/MODULE.bazel": "c081eda83625b6d97144f2da9dd5f074ecd56ba10f238257e7a90f56ee8a9c3c",
+    "https://bcr.bazel.build/modules/rules_java/8.5.0/source.json": "8aa0f3979d4c41e8575581e877eb2073a922c8f056fe74a67ca12eabf9e58715",
     "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7",
     "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909",
     "https://bcr.bazel.build/modules/rules_jvm_external/6.3/MODULE.bazel": "c998e060b85f71e00de5ec552019347c8bca255062c990ac02d051bb80a38df0",
@@ -263,45 +264,25 @@
         ]
       }
     },
-    "@@rules_java+//java:extensions.bzl%compatibility_proxy": {
+    "@@rules_java+//java:rules_java_deps.bzl%compatibility_proxy": {
       "general": {
-        "bzlTransitiveDigest": "sY6ScZ/D2fHhfhAXoGfro9vBFDTnZcZeD24Y35G3RQ8=",
-        "usagesDigest": "oTMuZ87Uif8roeNCdLa40yt9GNy30+6DDYIXqCEjm7I=",
+        "bzlTransitiveDigest": "0sQbPK5iRmD8OE3RjFkSKkyZQ8AX+s6fCtyM4TtjrQo=",
+        "usagesDigest": "gTu8Srf8G7tL645OdQBCe0C/Rg1drH4YKoQ4L8eL3K4=",
         "recordedFileInputs": {},
         "recordedDirentsInputs": {},
         "envVariables": {},
         "generatedRepoSpecs": {
           "compatibility_proxy": {
-            "bzlFile": "@@rules_java+//java:repositories.bzl",
+            "bzlFile": "@@rules_java+//java:rules_java_deps.bzl",
             "ruleClassName": "_compatibility_proxy_repo_rule",
             "attributes": {}
           }
         },
         "recordedRepoMappingEntries": [
           [
-            "bazel_features+",
-            "bazel_features_globals",
-            "bazel_features++version_extension+bazel_features_globals"
-          ],
-          [
-            "bazel_features+",
-            "bazel_features_version",
-            "bazel_features++version_extension+bazel_features_version"
-          ],
-          [
-            "rules_java+",
-            "bazel_features",
-            "bazel_features+"
-          ],
-          [
             "rules_java+",
             "bazel_tools",
             "bazel_tools"
-          ],
-          [
-            "rules_java+",
-            "remote_java_tools",
-            "rules_java++toolchains+remote_java_tools"
           ]
         ]
       }