<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[ROS2中gazebo无法打开URDF]]></title><description><![CDATA[<p dir="auto">在ROS2中打开URDF文件出现以下报错：[ERROR] [launch]: Caught exception in launch (see debug for traceback): [Errno 2] No such file or directory: '/opt/ros/humble/share/gazebo_ros/launch/empty_world.launch.py'</p>
<p dir="auto">重新安装一遍gazebo_ROS软件包还是没有解决<br />
终端中可以启动#ROS2#gazebo</p>
]]></description><link>https://fishros.org.cn/forum/topic/4624/ros2中gazebo无法打开urdf</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 05:47:09 GMT</lastBuildDate><atom:link href="https://fishros.org.cn/forum/topic/4624.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 05 Nov 2025 08:19:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ROS2中gazebo无法打开URDF on Sun, 16 Nov 2025 13:42:41 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://fishros.org.cn/forum/uid/27416">@wang_007</a> 可以试试以下方法<br />
1、更新launch命令</p>
<p dir="auto">如果Gazebo可正常启动，问题可能是使用了旧的launch文件路径。可以用新路径试一下：</p>
<pre><code> # 旧命令（失败的）：
 # ros2 launch gazebo_ros empty_world.launch.py  # 这个文件不存在
   
 # 新命令（正确的）：
 ros2 launch gazebo_ros gazebo.launch.py
</code></pre>
<ol start="2">
<li>修改URDF加载方式</li>
</ol>
<p dir="auto">如果你的launch文件中包含对empty_world.launch.py的引用，可以更新一把：</p>
<pre><code>    # 旧的引用方式
    from launch.actions import IncludeLaunchDescription
    from launch.launch_description_sources import PythonLaunchDescriptionSource
    
    # 新的引用方式
    gazebo = IncludeLaunchDescription(
        PythonLaunchDescriptionSource([
            get_package_share_directory('gazebo_ros'),
            '/launch/gazebo.launch.py'
        ])
   )
</code></pre>
<ol start="3">
<li>检查launch文件中的引用</li>
</ol>
<p dir="auto">查找launch文件中对Gazebo的引用，将其从：</p>
<pre><code># 错误的引用
 launch_py = os.path.join(get_package_share_directory('gazebo_ros'), 'launch', 'empty_world.launch.py')
</code></pre>
<p dir="auto">更改为：</p>
<pre><code>   # 正确的引用
   launch_py = os.path.join(get_package_share_directory('gazebo_ros'), 'launch', 'gazebo.launch.py')
</code></pre>
]]></description><link>https://fishros.org.cn/forum/post/19270</link><guid isPermaLink="true">https://fishros.org.cn/forum/post/19270</guid><dc:creator><![CDATA[若海]]></dc:creator><pubDate>Sun, 16 Nov 2025 13:42:41 GMT</pubDate></item></channel></rss>