Kurallar
py_proto_library
Kural kaynağını görüntülemepy_proto_library(name, deps, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; gerekli Bu hedef için benzersiz bir ad. |
deps
|
Etiketler listesi; varsayılan değer |
proto_lang_toolchain
Kural kaynağını gösterproto_lang_toolchain(name, allowlist_different_package, blacklisted_protos, command_line, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, mnemonic, output_files, plugin, plugin_format_flag, progress_message, protoc_minimal_do_not_use, restricted_to, runtime, tags, target_compatible_with, testonly, toolchain_type, toolchains, visibility)
Bazel kullanıyorsanız lütfen kuralı https://github.com/bazelbuild/rules_proto adresinden yükleyin.
Bir LANG_proto_library kuralının (ör. java_proto_library
) proto-derleyiciyi çağırmalıdır.
Bazı LANG_proto_library kuralları, komut satırı işaretçileri kullanılarak hangi araç zincirinin kullanılacağını belirtmeye olanak tanır. Bu kuralların belgelerine bakın.
Java derleyicinizi ayarlamak istemiyorsanız genellikle bu tür kurallar yazmamalısınız.
Derleyici yoktur. Proto derleyici, eklediğimiz proto_library kuralından alınır. Bu parametre, Blaze'a komut satırı işareti olarak iletilir.
Bazı özellikler, proto_library kuralında bir proto-derleyicinin çağrılmasına ihtiyaç duyar.
LANGUAGE_proto_library adlı derleyicinin kullandığı derleyicinin proto_library
ile aynı olması faydalı olur.
Örnekler
Basit bir örnek verelim:
proto_lang_toolchain(
name = "javalite_toolchain",
command_line = "--javalite_out=shared,immutable:$(OUT)",
plugin = ":javalite_plugin",
runtime = ":protobuf_lite",
)
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; gerekli Bu hedef için benzersiz bir ad. |
allowlist_different_package
|
Etiket; varsayılan değer |
blacklisted_protos
|
Etiket listesi; varsayılan blacklisted_protos öğesinin srcs özelliğindeki dosyalar için kod oluşturulmaz.
Bu, any.proto gibi proto çalışma zamanlarına zaten bağlı olan .proto dosyaları için kullanılır.
|
command_line
|
Dize; zorunlu Bu değer, kodu oluşturmak için proto-derleyiciye iletilir. Yalnızca bu kod oluşturucuya/eklentiye özel parçaları dahil edin (ör. -I parametrelerini dahil etmeyin)
|
mnemonic
|
Dize; varsayılan değer |
output_files
|
Dize; varsayılan değer command_line içindeki $(OUT) öğesinin nasıl biçimlendirileceğini, tek bir dosyaya giden bir yolla veya birden fazla dosya varsa çıkış dizinine göre kontrol eder.
Olası değerler: "tek", "çoklu".
|
plugin
|
Etiket; varsayılan değer --plugin=protoc-gen-PLUGIN=<executable>.
|
plugin_format_flag
|
Dize; varsayılan değer --plugin=protoc-gen-PLUGIN=<executable>.
|
progress_message
|
Dize; varsayılan değer |
protoc_minimal_do_not_use
|
Etiket; varsayılan değer |
runtime
|
Etiket; varsayılan değer |
toolchain_type
|
Etiket; varsayılan değer |
proto_toolchain
Kural kaynağını görüntülemeproto_toolchain(name, command_line, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, mnemonic, output_files, progress_message, proto_compiler, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; zorunlu Bu hedef için benzersiz bir ad. |
command_line
|
Dize; varsayılan değer |
mnemonic
|
Dize; varsayılan değer |
output_files
|
Dize; varsayılan değer |
progress_message
|
Dize; varsayılan değer |
proto_compiler
|
Etiket; varsayılan değer |