
在 ROS2 开发中,ros2 pkg create 是初始化功能包的核心工具。它不仅能自动生成符合规范的目录结构,还能预设配置文件和示例节点,省去了手动搭建环境的繁琐步骤。无论是 C++ 还是 Python 节点,掌握这个命令都能显著提升开发效率。
搭建工作空间
我们通常先在工作区根目录下创建一个新文件夹,并包含 src 子目录。这是 ROS2 的标准布局,方便后续使用 colcon 进行构建。
mkdir -p test_ws/src && cd test_ws/src
功能包创建参数解析
基础语法
基本命令格式如下,其中 <功能包名称> 是必填项,需遵循小写加下划线的命名规范:
ros2 pkg create [可选参数] <功能包名称>
核心配置项
- 构建类型:通过
--build-type指定。ament_cmake用于 C++ 项目,默认生成CMakeLists.txt;ament_python用于 Python 项目,生成setup.py等文件。 - 依赖管理:使用
--dependencies声明所需的其他 ROS2 包(如rclcpp,std_msgs)。这会自动将依赖写入package.xml和CMakeLists.txt,避免编译时找不到头文件。 - 元数据:
--description描述包的用途,--license设定开源协议(如 MIT, Apache-2.0),--maintainer填写维护者信息。
实战示例
创建一个基础的 C++ 发布节点,需要引入 rclcpp 和 std_msgs:
ros2 pkg create my_cpp_node \
--build-type ament_cmake \
--dependencies rclcpp std_msgs \
--node-name my_first_node \
--description "ROS2 C++ 基础节点包" \
--license MIT \
--maintainer "Your Name"
若涉及自定义消息或导航功能,只需调整依赖列表即可。例如导航包通常需要 和 。

