ROS改错:launch文件中标签的结束符号问题

详细报错:

RLException: Invalid roslaunch XML syntax: mismatched tag: line ???, column ???
The traceback for the exception was written to the log file

原因:

未修改之前

<!-- 启动乌龟GUI和键盘控制节点 -->
<launch>
    <!-- 乌龟GUI -->
    <node pkg="turtlesim" type="turtlesim_node" name="turtle1" output="screen"/>
    <!-- 给乌龟GUI传参 -->
        <param name="background_b" value="255" type="int"/>
        <param name="background_g" value="255" type="int"/>
        <param name="background_r" value="255" type="int"/>
    </node>
    <!-- 键盘控制 -->
    <node pkg="turtlesim" type="turtle_teleop_key" name="key" output="screen"/>
    <!-- 乌龟位姿订阅 -->
    <node pkg="wugui_ttest" type="test01_sub_pose_p.py" name="wugui_pose" output="screen"/>
    <!-- 加一个乌龟 -->
    <node pkg="wugui_ttest" type="wugui_service_client" name="wugui_spawn" output="screen"/>
    <!-- 加另一个乌龟 -->
    <node pkg="wugui_ttest" type="wugui_service_client_p.py" name="wugui_spawn_p" output="screen"/>
</launch>

出现问题位置

    <node pkg="turtlesim" type="turtlesim_node" name="turtle1" output="screen"/>
    <!-- 给乌龟GUI传参 -->
        <param name="background_b" value="255" type="int"/>
        <param name="background_g" value="255" type="int"/>
        <param name="background_r" value="255" type="int"/>
    </node>

其中launch文件标签以/为结束标志。其中出现问题位置第一行的node带了/,最后一行</node>,意味着出现了两次结束,第二次结束找不到开始,故报错在第二次结束地方。

改正:

<node pkg="turtlesim" type="turtlesim_node" name="turtle1" output="screen">
<!-- 启动乌龟GUI和键盘控制节点 -->
<launch>
    <!-- 乌龟GUI -->
    <node pkg="turtlesim" type="turtlesim_node" name="turtle1" output="screen">
    <!-- 给乌龟GUI传参 -->
        <param name="background_b" value="255" type="int"/>
        <param name="background_g" value="255" type="int"/>
        <param name="background_r" value="255" type="int"/>
    </node>
    <!-- 键盘控制 -->
    <node pkg="turtlesim" type="turtle_teleop_key" name="key" output="screen"/>
    <!-- 乌龟位姿订阅 -->
    <node pkg="wugui_ttest" type="test01_sub_pose_p.py" name="wugui_pose" output="screen"/>
    <!-- 加一个乌龟 -->
    <node pkg="wugui_ttest" type="wugui_service_client" name="wugui_spawn" output="screen"/>
    <!-- 加另一个乌龟 -->
    <node pkg="wugui_ttest" type="wugui_service_client_p.py" name="wugui_spawn_p" output="screen"/>
</launch>

 普遍性:

常出现在想给节点添加参数时,忘记了去掉/,为了框起<param>,又加上了</node>,出现错误。

猜你喜欢

转载自blog.csdn.net/wzfafabga/article/details/127514851