错误“在bazel中未定义名称'new_local_repository'”

问题描述 投票:0回答:2

我了解new_git_repository需要以下负载:load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository", "new_git_repository")

但是如何找到new_local_repository所需的负载。我尝试浏览build_defs git folder,但未在其中定义new_local_repository,因此我无法猜测负载。

我收到以下错误-name 'new_local_repository' is not defined。如何找到所需的负载?

c++ bazel
2个回答
0
投票

问题是,我在new_local_repository文件中的函数内部使用了.bzl,然后在WORKSPACE中加载该函数,然后调用该函数。将new_local_repository规则移至WORKSPACE文件为我解决了此问题。


0
投票

如果在从new_local_repository文件加载的.bzl文件中调用WORKSPACE,则必须改用native.new_local_repository。这是因为new_local_repository是在Bazel核心中定义的,而不是任何.bzl文件。

© www.soinside.com 2019 - 2024. All rights reserved.