diff --git a/java/repositories.bzl b/java/repositories.bzl
index 5829afc..5c38ec6 100644
--- a/java/repositories.bzl
+++ b/java/repositories.bzl
@@ -12,12 +12,299 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe")
+
+def java_tools_javac9_repos():
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac9_linux",
+        sha256 = "0bf678d9815c7212564ecc99b3bd3643450c17657becb12a7bbedcf97ece740d",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac9/v3.0/java_tools_javac9_linux-v3.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac9_windows",
+        sha256 = "9b7e8de98ed2d64ea20a7512f986028ca6375b0fce7637f8d05d1517e7890867",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac9/v3.0/java_tools_javac9_windows-v3.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac9_macos",
+        sha256 = "13a94ddf0c421332f0d3be1adbfc833e24a3a3715bab8f1152660f2df81e286a",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac9/v3.0/java_tools_javac9_darwin-v3.0.zip",
+        ],
+    )
+
+def java_tools_javac10_repos():
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac10_linux",
+        sha256 = "52e03d400d978e9af6321786cdf477694c3838d7e78c2e5b926d0244670b6d3c",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v5.0/java_tools_javac10_linux-v5.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac10_windows",
+        sha256 = "2e3fa82f5790917b56cec5f5d389ed5ff9592a00b5d66750a1f2b6387921d8be",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v5.0/java_tools_javac10_windows-v5.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac10_macos",
+        sha256 = "d5503cc1700b3d544444302617ccc9b2c2780b7fa7bd013215da403148958c35",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v5.0/java_tools_javac10_darwin-v5.0.zip",
+        ],
+    )
+
+def java_tools_javac11_repos():
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac11_linux",
+        sha256 = "10d6f00c72e42b6fda378ad506cc93b1dc92e1aec6e2a490151032244b8b8df5",
+        urls = [
+             "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v3.0/java_tools_javac11_linux-v3.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac11_windows",
+        sha256 = "b688155d81245b4d1ee52cac447aae5444b1c59dc77158fcbde05554a6bab48b",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v3.0/java_tools_javac11_windows-v3.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac11_macos",
+        sha256 = "28989f78b1ce437c92dd27bb4943b2211ba4db916ccbb3aef83696a8f9b43724",
+        urls = [
+             "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v3.0/java_tools_javac11_darwin-v3.0.zip",
+        ],
+    )
+
+def java_tools_javac12_repos():
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac12_linux",
+        sha256 = "fc199be2c7873b0792e00743679fedc1d249fa779c3fe7676111f8d7ced9f2b4",
+        urls = ["https://mirror.bazel.build/bazel_java_tools/releases/javac12/v2.0/java_tools_javac12_linux-v2.0.zip"],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac12_windows",
+        sha256 = "cab191830609838e99c9adc5e9628e8c839305674c5a9ecf1eea4ba0f6c0b0aa",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac12/v2.0/java_tools_javac12_windows-v2.0.zip",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_java_tools_javac12_macos",
+        sha256 = "d73ff1de1fc2d3ea8403d54099dd2247a2a87390107e7cf81e3a383b0c687341",
+        urls = [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac12/v2.0/java_tools_javac12_darwin-v2.0.zip",
+        ],
+    )
+
+def remote_jdk9_repos():
+    # OpenJDK distributions that should only be downloaded on demand (e.g. when
+    # building a java_library or a genrule that uses java make variables).
+    # This will allow us to stop bundling the full JDK with Bazel.
+    # Note that while these are currently the same as the openjdk_* rules in
+    # Bazel's WORKSPACE file, but they don't have to be the same.
+
+    # The source-code for this OpenJDK can be found at:
+    # https://openjdk.linaro.org/releases/jdk9-src-1708.tar.xz
+    maybe(
+        http_archive,
+        name = "remote_jdk9_linux_aarch64",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "72e7843902b0395e2d30e1e9ad2a5f05f36a4bc62529828bcbc698d54aec6022",
+        strip_prefix = "jdk9-server-release-1708",
+        urls = [
+            # When you update this, also update the link to the source-code above.
+            "https://mirror.bazel.build/openjdk.linaro.org/releases/jdk9-server-release-170bazel_skylib8.tar.xz",
+            "http://openjdk.linaro.org/releases/jdk9-server-release-1708.tar.xz",
+        ],
+    )
+
+    maybe(
+        http_archive,
+        name = "remote_jdk9_linux",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        sha256 = "45f2dfbee93b91b1468cf81d843fc6d9a47fef1f831c0b7ceff4f1eb6e6851c8",
+        strip_prefix = "zulu9.0.7.1-jdk9.0.7-linux_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-linux_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk9_macos",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu9.0.7.1-jdk9.0.7-macosx_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-macosx_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk9_windows",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu9.0.7.1-jdk9.0.7-win_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-win_x64.zip",
+        ],
+    )
+
+def remote_jdk10_repos():
+    # The source-code for this OpenJDK can be found at:
+    # https://openjdk.linaro.org/releases/jdk10-src-1804.tar.xz
+    maybe(
+        http_archive,
+        name = "remote_jdk10_linux_aarch64",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "b7098b7aaf6ee1ffd4a2d0371a0be26c5a5c87f6aebbe46fe9a92c90583a84be",
+        strip_prefix = "jdk10-server-release-1804",
+        urls = [
+            # When you update this, also update the link to the source-code above.
+            "https://mirror.bazel.build/openjdk.linaro.org/releases/jdk10-server-release-1804.tar.xz",
+            "http://openjdk.linaro.org/releases/jdk10-server-release-1804.tar.xz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk10_linux",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        sha256 = "b3c2d762091a615b0c1424ebbd05d75cc114da3bf4f25a0dec5c51ea7e84146f",
+        strip_prefix = "zulu10.2+3-jdk10.0.1-linux_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-linux_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk10_macos",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu10.2+3-jdk10.0.1-macosx_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-macosx_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk10_windows",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu10.2+3-jdk10.0.1-win_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-win_x64.zip",
+        ],
+    )
+
+def remote_jdk11_repos():
+    # The source-code for this OpenJDK can be found at:
+    # https://openjdk.linaro.org/releases/jdk10-src-1804.tar.xz
+    maybe(
+        http_archive,
+        name = "remote_jdk11_linux_aarch64",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "3b0d91611b1bdc4d409afcf9eab4f0e7f4ae09f88fc01bd9f2b48954882ae69b",
+        strip_prefix = "zulu11.31.15-ca-jdk11.0.3-linux_aarch64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.15-ca-jdk11.0.3/zulu11.31.15-ca-jdk11.0.3-linux_aarch64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        "remote_jdk11_linux",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "232b1c3511f0d26e92582b7c3cc363be7ac633e371854ca2f2e9f2b50eb72a75",
+        strip_prefix = "zulu11.2.3-jdk11.0.1-linux_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-linux_x64.tar.gz",
+        ],
+    )
+
+    maybe(
+        http_archive,
+        "remote_jdk11_macos",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "1edf366ee821e5db8e348152fcb337b28dfd6bf0f97943c270dcc6747cedb6cb",
+        strip_prefix = "zulu11.2.3-jdk11.0.1-macosx_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-macosx_x64.tar.gz",
+        ],
+    )
+
+    maybe(
+        http_archive,
+        "remote_jdk11_windows",
+        build_file = "@local_jdk//:BUILD.bazel",
+        sha256 = "8e1e2b8347de6746f3fd1538840dd643201533ab113abc4ed93678e342d28aa3",
+        strip_prefix = "zulu11.2.3-jdk11.0.1-win_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-win_x64.zip",
+        ],
+    )
+
+def remote_jdk12_repos():
+    maybe(
+        http_archive,
+        name = "remote_jdk12_linux",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu12.2.3-ca-jdk12.0.1-linux_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu12.2.3-ca-jdk12.0.1/zulu12.2.3-ca-jdk12.0.1-linux_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk12_macos",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu12.2.3-ca-jdk12.0.1-macosx_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu12.2.3-ca-jdk12.0.1/zulu12.2.3-ca-jdk12.0.1-macosx_x64.tar.gz",
+        ],
+    )
+    maybe(
+        http_archive,
+        name = "remote_jdk12_windows",
+        build_file_content = "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        strip_prefix = "zulu12.2.3-ca-jdk12.0.1-win_x64",
+        urls = [
+            "https://mirror.bazel.build/openjdk/azul-zulu12.2.3-ca-jdk12.0.1/zulu12.2.3-ca-jdk12.0.1-win_x64.zip",
+        ],
+    )
+
+def bazel_skylib():
+    maybe(
+        http_archive,
+        name = "bazel_skylib",
+        type = "tar.gz",
+        url = "https://github.com/bazelbuild/bazel-skylib/releases/download/0.9.0/bazel_skylib-0.9.0.tar.gz",
+        sha256 = "1dde365491125a3db70731e25658dfdd3bc5dbdfd11b840b3e987ecf043c7ca0",
+    )
+
 def rules_java_dependencies():
     """An utility method to load all dependencies of rules_java.
 
-    It doesn't do anything at the moment.
+    Loads the remote repositories used by default in Bazel.
     """
-    pass
+
+    remote_jdk11_repos()
+    java_tools_javac11_repos()
+    bazel_skylib()
 
 def rules_java_toolchains():
     """An utility method to load all Java toolchains.
