我有一个ROS
服务器MY_Warning
,文件node/srv/MY_Warning.srv
包含:
typ1 var1
typ2 var2
---
typ3 var3
在node/src/subdir/main.py
(包含服务器)中,我有from node.srv import MY_Warning, MY_WarningResponse
,但我得到了:
from node.srv import MY_Warning, MY_WarningResponse
ImportError: cannot import name EOR_Warning
rossrv show MY_Warning
告诉我正确/预期的事情:
$ rossrv show MY_Warning
[node/MY_Warning]:
typ1 var1
typ2 var2
---
typ3 var3
我在这里想念或做错了什么?我不明白...
答案 0 :(得分:1)
我想念什么吗?导入的丢失错误和导入语句不匹配。错误消息中的模块不是一个导入的模块
答案 1 :(得分:0)
我遇到了同样的错误。在其他问题中,错误的路径是一个命名问题。即使出现错误EOR_Warning
,也不要以为是这种情况,您应该得到My_Warning。
检查ls devel/include/node/
的输出量。您能看到标题吗?
尝试:
catkin_make clean
catkin_make --only-pkg-with-deps node
rosrun node main.py
然后重试导入ROS服务。这解决了我的问题。