要在Bazel构建中不构建protobuf的运行时库和头文件,可以使用以下解决方法:
proto_library(
name = "my_proto",
srcs = ["my_proto.proto"],
visibility = ["//visibility:public"],
deps = ["@com_google_protobuf//:protobuf"],
plugins = [
"@com_google_protobuf//:protobuf",
"//path/to/your/protobuf_plugin:plugin",
],
strip_import_prefix = "path/to/your/proto/package",
)
在这个例子中,我们使用proto_library规则来定义我们的proto文件,并在deps字段中指定依赖的protobuf库。但是,我们没有在proto_library规则中使用"protobuf"标签,这样就不会构建protobuf库。
proto_library(
name = "my_proto",
srcs = ["my_proto.proto"],
visibility = ["//visibility:public"],
deps = ["@com_google_protobuf//:protobuf"],
plugins = [
"@com_google_protobuf//:protobuf",
"//path/to/your/protobuf_plugin:plugin",
],
strip_include_prefix = "path/to/your/proto/package",
)
在这个例子中,我们在proto_library规则中使用了strip_include_prefix字段,并指定了要从头文件中删除的前缀。这样,在构建时就不会生成这些头文件。
请注意,上述示例中的"path/to/your/proto/package"应该替换为您实际的proto文件路径。
希望这个解决方法对你有帮助!