可以使用什么标签来引用外部软件包的BUILD文件中的本地软件包?
说我有A包裹,这是我的顶级包裹。在程序包A的WORKSPACE文件中,我抓取了外部程序包B,该程序使用build_file参数将BUILD.bazel文件覆盖到该程序包上。
A的cc_library规则实际上并不依赖于B。 A.Tests规则取决于A和B。 B也依赖于A。
在我为B定义的BUILD文件中,如何引用A?没有标签似乎起作用。这可能吗?
答案 0 :(得分:1)
如果A.Tests依赖于B(和A),并且B也依赖于A,为什么A和B分开?
要回答您的问题,您需要创建第三个工作区C,将A和B都声明为外部工作区,然后A的目标可以引用@B//x:y
,而B的目标可以引用@A//z:w
。
答案 1 :(得分:0)
在B的BUILD文件(由build_file参数指定)中,我可以通过以下标签引用A:<?php
$client = $this->google->getClient();
$service = new Google_Service_Classroom($client);
$optParams = array(
'courseStates' => 'ACTIVE',
'pageSize' => 20,
'teacherId' => $teacher,
);
$results = $service->courses->listCourses($optParams);
foreach($results->getCourses() as $r)
{
$course = (string)$r->getId();
// coursework
$work = $service->courses_courseWork->listCoursesCourseWork($course, array());
// ...
// announcements
$announ = $service->courses_announcements->listCoursesAnnouncements($course, array('announcementStates' => 'PUBLISHED'));
// ...
}
// materials???