1load("@rules_java//java:defs.bzl", "java_proto_library") 2load("@rules_jvm_external//:defs.bzl", "java_export") 3load("@rules_proto//proto:defs.bzl", "proto_library") 4load("//:protobuf_version.bzl", "PROTOBUF_VERSION") 5load("//java/internal:testing.bzl", "junit_tests") 6 7java_library( 8 name = "util", 9 srcs = glob([ 10 "src/main/java/com/google/protobuf/util/*.java", 11 ]), 12 visibility = ["//visibility:public"], 13 deps = [ 14 "//java/core", 15 "@maven//:com_google_code_findbugs_jsr305", 16 "@maven//:com_google_code_gson_gson", 17 "@maven//:com_google_errorprone_error_prone_annotations", 18 "@maven//:com_google_guava_guava", 19 "@maven//:com_google_j2objc_j2objc_annotations", 20 ], 21) 22 23# Bazel users, don't depend on this target, use :util. 24java_export( 25 name = "util_mvn", 26 maven_coordinates = "com.google.protobuf:protobuf-java-util:%s" % PROTOBUF_VERSION, 27 pom_template = "pom_template.xml", 28 visibility = ["//java:__pkg__"], 29 runtime_deps = [":util"], 30 deploy_env = ["//java/core"], 31) 32 33filegroup( 34 name = "release", 35 srcs = [ 36 ":util_mvn-docs", 37 ":util_mvn-maven-source", 38 ":util_mvn-pom", 39 ":util_mvn-project", 40 ], 41 visibility = ["//java:__pkg__"], 42) 43 44proto_library( 45 name = "test_protos", 46 srcs = glob(["src/test/proto/**/*.proto"]), 47 deps = [ 48 "//:any_proto", 49 "//:duration_proto", 50 "//:field_mask_proto", 51 "//:struct_proto", 52 "//:timestamp_proto", 53 "//:wrappers_proto", 54 ], 55) 56 57java_proto_library( 58 name = "test_protos_java_proto", 59 deps = [":test_protos"], 60) 61 62junit_tests( 63 name = "tests", 64 package_name = "com.google.protobuf.util", 65 srcs = glob(["src/test/java/**/*.java"]), 66 deps = [ 67 ":test_protos_java_proto", 68 ":util", 69 "//java/core", 70 "//java/core:generic_test_protos_java_proto", 71 "@maven//:com_google_code_gson_gson", 72 "@maven//:com_google_guava_guava", 73 "@maven//:com_google_truth_truth", 74 "@maven//:junit_junit", 75 ], 76) 77