1. 环境准备与问题诊断
遇到"Unable to locate package ros-noetic-jsk-recognition"错误时,先别急着重装系统。我在实际项目中处理过几十次类似情况,发现90%的问题都出在基础环境配置上。让我们先做个快速诊断:
打开终端,依次运行这三个命令:
lsb_release -a
rosversion -d
apt-cache policy ros-noetic-jsk-recognition
第一个命令确认Ubuntu版本是否为20.04(代号Focal),第二个检查ROS发行版是否为Noetic,第三个查看包是否在可用仓库中。我上周帮同事排查时,发现他的系统显示Ubuntu20.04但内核还是18.04的,导致各种诡异问题。
常见症状有三种:
- 完全找不到包(输出显示"无法定位")
- 版本冲突(提示依赖关系不满足)
- 哈希校验失败(常见于网络波动时)
最近遇到个典型案例:用户A的Docker容器里始终装不上jsk-recognition,最后发现是忘了挂载apt缓存目录,每次构建都在重新下载索引。这种隐蔽问题特别考验排查经验。
2. 官方仓库配置指南
官方源配置看似简单,但魔鬼在细节里。除了常规的ros-latest.list,还需要注意这些关键点:
-
密钥服务器选择:有时候
hkp://keyserver.ubuntu.com会超时,可以换成hkp://pgp.mit.edusudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-key C1CF6E3


327

被折叠的 条评论
为什么被折叠?



