第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Drake 作為外部 Bazel 時 PYTHONPATH 中的意外路徑

使用 Drake 作為外部 Bazel 時 PYTHONPATH 中的意外路徑

慕尼黑8549860 2022-11-18 20:42:44
我在另一個 bazel 項目中使用 drake 作為外部,它正在添加...runfiles/drake以及添加...runfiles/drake/bindings到PYTHONPATH. 后者幾乎只包括pydrake(這正是我想要的),但前者包括一堆其他目錄作為模塊,包括 common 、示例、工具和綁定,這導(dǎo)致與我自己的項目名稱沖突。這是預(yù)期的行為嗎?處理這個問題的最佳方法是什么?我測試了 drake-external-examples/drake_bazel_external 中的示例,我看到了同樣的問題(相關(guān)提交在這里)。
查看完整描述

1 回答

?
慕神8447489

TA貢獻1780條經(jīng)驗 獲得超1個贊

處理此問題的最佳方法是確保您的導(dǎo)入范圍在您的項目范圍內(nèi);例如,而不是from common import foo,而不是做from drake_bazel_external.common import foo。


以下是使用 Python 執(zhí)行此操作的示例 Bazel 項目的片段:


https://github.com/EricCousineau-TRI/repro/blob/39f79009a2e89b987f072276d1921a282f63e6a1/python/bazel_py_example/mid/py3_bin.py#L3


對于根本原因,這是我嘗試用更多輸出來檢測您的重現(xiàn),固定到drake@v0.18.0:


drake_bazel_external/apps/bar.py(分支機構(gòu))


下面是 Python 路徑的預(yù)覽,它證實了您所看到的內(nèi)容:


path:

  {source_tree}/apps

  {runfiles}

  {runfiles}/drake/bindings

  {runfiles}/lcmtypes_bot2_core/lcmtypes

  {runfiles}/lcmtypes_bot2_core

  {runfiles}/lcmtypes_robotlocomotion/lcmtypes

  {runfiles}/lcmtypes_robotlocomotion

  {runfiles}/meshcat_python/src

  {runfiles}/spdlog

  {runfiles}/meshcat_python

  {runfiles}/lcm

  {runfiles}/ignition_math

  {runfiles}/drake

  {runfiles}/drake_external_examples

  /usr/lib/python36.zip

  /usr/lib/python3.6

  /usr/lib/python3.6/lib-dynload

  /usr/lib/python3/dist-packages

common: {runfiles}/drake/common/__init__.py

最終,這是預(yù)期的行為。這是德雷克問題和一個相關(guān)bazelbuild問題:


https://github.com/RobotLocomotion/drake/issues/7871

https://github.com/bazelbuild/bazel/issues/7653

最好的方法是使用特定于項目的導(dǎo)入?,F(xiàn)在,嘗試通過使用更具體的導(dǎo)入來避免這種情況。


我將重新打開 Drake 問題,但會保持低優(yōu)先級,因為有更好的解決方案 (IMO),并且需要更多的基礎(chǔ)設(shè)施工作才能實現(xiàn)。


謝謝!


編輯:具體來說,最嚴(yán)重地絆倒你的例子的是 Bazel 正在生成@drake//common:__init__.py. 它只是由于legacy_create_init標(biāo)志以及我們想要文件的事實而生成的libdrake_marker.so。


仍然有一個事實drake(在其他存儲庫中)完全在 Python 上。


編輯 2:根據(jù) Jeremy 的要求提出新問題:https ://github.com/RobotLocomotion/drake/issues/13320


查看完整回答
反對 回復(fù) 2022-11-18
  • 1 回答
  • 0 關(guān)注
  • 143 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號