Update build files
diff --git a/java/BUILD b/java/BUILD
index 3e57ab6..4a1cdc2 100644
--- a/java/BUILD
+++ b/java/BUILD
@@ -13,6 +13,8 @@
     name = "release",
     srcs = [
         "//java/core:release", # contains lite.
+        "//java/kotlin:release",
+        "//java/kotlin-lite:release",
         "//java/util:release",
     ]
 )
diff --git a/java/kotlin-lite/BUILD b/java/kotlin-lite/BUILD
index a41584a..fd0c103 100644
--- a/java/kotlin-lite/BUILD
+++ b/java/kotlin-lite/BUILD
@@ -1,5 +1,7 @@
 load("@io_bazel_rules_kotlin//kotlin:jvm.bzl", "kt_jvm_library")
 load("@rules_java//java:defs.bzl", "java_lite_proto_library")
+load("@rules_jvm_external//:kt_defs.bzl", "kt_jvm_export")
+load("//:protobuf_version.bzl", "PROTOBUF_VERSION")
 load("//:protobuf.bzl", "internal_gen_kt_protos")
 
 java_lite_proto_library(
@@ -13,6 +15,47 @@
     deps = ["//java/lite"],
 )
 
+kt_jvm_library(
+    name = "well_known_protos_kotlin_lite",
+    srcs = [
+        "//:gen_well_known_protos_kotlinlite",
+    ],
+    deps = [
+        "//java/lite",
+        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
+        "//java/kotlin:shared_runtime",
+    ],
+)
+
+kt_jvm_export(
+    name = "kotlin-lite_mvn",
+    maven_coordinates = "com.google.protobuf:protobuf-kotlin-lite:%s" % PROTOBUF_VERSION,
+    pom_template = "//java/kotlin-lite:pom_template.xml",
+    resources = ["//:well_known_protos"],
+    runtime_deps = [
+        ":lite_extensions",
+        ":well_known_protos_kotlin_lite",
+        "//java/kotlin:bytestring_lib",
+        "//java/kotlin:only_for_use_in_proto_generated_code_its_generator_and_tests",
+        "//java/kotlin:shared_runtime",
+    ],
+    deploy_env = [
+        "@com_github_jetbrains_kotlin//:kotlin-stdlib",
+        "//java/lite",
+    ],
+)
+
+filegroup(
+    name = "release",
+    srcs = [
+        ":kotlin-lite_mvn-docs",
+        ":kotlin-lite_mvn-maven-source",
+        ":kotlin-lite_mvn-pom",
+        ":kotlin-lite_mvn-project",
+    ],
+    visibility = ["//java:__pkg__"],
+)
+
 test_suite(
     name = "tests",
     tests = [
diff --git a/java/kotlin/BUILD b/java/kotlin/BUILD
index f2bc538..1da4de5 100644
--- a/java/kotlin/BUILD
+++ b/java/kotlin/BUILD
@@ -37,6 +37,7 @@
     name = "bytestring_lib",
     srcs = ["src/main/kotlin/com/google/protobuf/ByteStrings.kt"],
     deps = ["//java/lite"],
+    visibility = ["//java:__subpackages__"],
 )
 
 kt_jvm_library(
@@ -48,21 +49,10 @@
     deps = ["//java/core"],
 )
 
-kt_jvm_library(
-    name = "kotlin",
-    runtime_deps = [
-      ":bytestring_lib",
-      ":full_extensions",
-      ":only_for_use_in_proto_generated_code_its_generator_and_tests",
-      ":shared_runtime",
-      ":well_known_protos_kotlin",
-    ],
-    visibility = ["//visibility:public"],
-)
-
 kt_jvm_export(
     name = "kotlin_mvn",
     maven_coordinates = "com.google.protobuf:protobuf-kotlin:%s" % PROTOBUF_VERSION,
+    pom_template = "//java/kotlin:pom_template.xml",
     resources = ["//:well_known_protos"],
     runtime_deps = [
       ":bytestring_lib",
@@ -77,6 +67,17 @@
     ],
 )
 
+filegroup(
+    name = "release",
+    srcs = [
+        ":kotlin_mvn-docs",
+        ":kotlin_mvn-maven-source",
+        ":kotlin_mvn-pom",
+        ":kotlin_mvn-project",
+    ],
+    visibility = ["//java:__pkg__"],
+)
+
 test_suite(
     name = "tests",
     tests = [
diff --git a/java/util/BUILD b/java/util/BUILD
index 2714917..c835b68 100644
--- a/java/util/BUILD
+++ b/java/util/BUILD
@@ -27,6 +27,7 @@
     pom_template = "pom_template.xml",
     visibility = ["//java:__pkg__"],
     runtime_deps = [":util"],
+    deploy_env = ["//java/core"],
 )
 
 filegroup(