我能够让py_runtime指向正确的python解释器, 但是现在我希望能够使用python 3作为我的Bazel规则,并且python 2用于为python 2编写的现有Bazel规则。鉴于下面的py_runtime,我如何将它添加到py_library以便它在python 3上运行其他一切都在python 2上运行?
py_runtime(
name = "python-3.6",
files = [],
interpreter = "python3interpreter",
)
py_runtime(
name = "python-2.7",
files = [],
interpreter = "python2interpreter",
)
py_library(
name = "foo",
srcs = ["foo.py"]
)
答案 0 :(得分:0)
首先使用py_runtime_pair
来定义PY2和PY3工具链。然后注意,只有py_binary
附加了python_version
,没有附加库。这是因为库可以与PY2和PY3兼容。尽管对于py_library
,您必须正确定义deps
。您必须在select
上使用python_version
才能获得正确的部门。