代码之家  ›  专栏  ›  技术社区  ›  Ezra

ROS linting解决方案是什么

  •  0
  • Ezra  · 技术社区  · 7 年前

    ros编码的方式是什么?

    对于ros1,我已经找到了roslint,但我不清楚这是否是lint ros代码的推荐方法,以及它是否仍然得到维护/支持(上次提交是三年前)。

    对于ros2,我找不到任何正式的皮棉解决方案。

    2 回复  |  直到 7 年前
        1
  •  2
  •   luator    7 年前

    不确定是否存在“脱毛方式”。对于Python/C++代码,基本上可以使用任何标准的Python/C++linter。

    此外(使用ROS 1时),我可以强烈推荐 catkin_lint ,它会检查包定义,并通知相关问题,如不一致的依赖项声明或缺少安装命令(尤其是在从devel工作区移动到robot上安装包时,后者可以节省大量时间)。

        2
  •  1
  •   Stoogy    6 年前

    ROS2开发指南解释了使用的规则。 Link1 Link2

    有一根过梁位于 ament_lint 执行一些规则。 要作为包测试的一部分自动运行过梁(使用 BUILD_TEST ):

    • 依靠 ament_lint_auto ament_lint_common :

    Src file example Package.xml

    <test_depend>ament_lint_auto</test_depend>
    <test_depend>ament_lint_common</test_depend>
    
    • 2行到你的CMakeLists:(使用BUILD_测试)

    Src file example CMakeList

    find_package(ament_lint_auto REQUIRED)
    ament_lint_auto_find_test_dependencies()