a.protoをb.protoにインポートし、Bazelでコンパイルしたいと思います。Bazelのpy_proto_libraryに依存関係としてprotobufファイルを追加してください。
BUILD:
import public "a.proto";
b.proto
py_proto_library(
name = "b_py_proto",
protos = ["b.proto"],
deps = [
":a_proto"
]
)
py_proto_library(
name = "a_proto",
protos = ["a.proto"]
)
私はBazelでそれを実行すると、私はそれが動作するはず方法です例hereに応じていても、does not have mandatory providers: 'py'.
エラーが発生します。
ファイルグループを使用して依存関係としてa.protoを追加しようとしましたが、同じエラーが発生しました。明らかにdeps
にはPythonファイルが必要です。 py_proto_libraryはjava_proto_libraryと異なる動作をしていますか?もしそうなら、どのように正しくインポートされるように依存関係としてa.protoを追加できますか?
EDIT: は、私はあなたがproto_deps
として渡す場合は、このルールは.proto
ファイルを受け付けhttps://github.com/pubref/rules_protobuf/archive/v0.8.1.tar.gz
からいるProtobufをロードしていますが、その後、私はエラーにImport "a.proto" was not found or had errors.
を取得たぶん私は何とかimports
を指定する必要がありますか?
私はまだ取得 'py_proto_library'にsrcs''としてa.protoを追加する場合同じエラー。私はa.protoの 'py_proto_library'ルールを追加し、' deps'としてそれを使用して、 'a.proto"の "a.proto"を見つけられなかったか、エラーがあったのです。 – Zeitgeist