首页 > 解决方案 > 如何查看所有当前使用的包?

问题描述

我实现了一个依赖于其他一些包的 ros 包。
这些包依赖于更多的包等等......

在我的包中构建和运行节点时,如何找出实际使用了哪些包?
(除了手动查看所有的 package.xml 文件,因为在很多情况下,一些包被列在那里但已经被弃用并且不再实际使用)

所以我正在寻找可以列出所有实际包依赖项的工具/命令/脚本之类的东西。

标签: ros

解决方案


我认为您可以使用rospack. 要查看包所依赖的所有内容(包括依赖项的依赖项)而不重复,只需执行

rospack depends my_package

您可以使用缩进对其进行格式化以查看每个包的所有依赖链(如果多个包共享相同的依赖项,则将包括跨链的重复项):

rospack depends-indent my_package

如果你只想知道你的包的直接依赖关系,你可以这样做:

rospack depends1 my_package

我不确定是否解决了您认为它不应该识别已弃用的依赖项的问题,但是如果包仍在 package.xml 中明确指定依赖项,系统如何知道这不是真正的依赖项?最好让这些 package.xml 文件保持最新。


推荐阅读