我正在使用带有以下环境变量的ROS-melodic:
ROS_PYTHON_VERSION=2
ROS_PACKAGE_PATH=/home/florian/git/software_integration/src:/opt/ros/melodic/share对于一个项目,我想使用LIDAR传感器进行障碍物检测和轨迹预测。为此,我根据给定的说明安装了以下github代码库:https://github.com/kostaskonkk/datmo
到目前为止,repo工作正常,我可以开始示例,主题已经发布。现在我想用下面的MWE实现一个新的监听器:
#!/usr/bin/env python
import rospy
from datmo.msg import TrackArray
def callbackTrackArray(data):
print(type(data.date))
def getInput():
rospy.init_node('obstacleComputer', anonymous= True)
tracks = rospy.Subscriber("datmo/box_kf", TrackArray, callbackTrackArray)
rospy.spin()
if __name__ == '__main__':
getInput()但如果我运行它,它会喊“没有名为‘datmo’的模块”。但如果我输入"import da",PyCharm甚至会建议我输入"datmo“,所以他知道这一点。我在PyCharm中使用Python3.8venv,其解释器路径如下:

另外,我的项目结构看起来像这样( datmo包就在这里):

完整错误堆栈:
Traceback (most recent call last):
File "/home/florian/git/software_integration/src/trajectory_prediction/src/ObstacleComputer.py", line 7, in <module>
from datmo.msg import TrackArray
ModuleNotFoundError: No module named 'datmo'发布于 2020-07-05 20:23:14
我必须将ROS_PACKAGE_PATH添加到解释器设置中-->环境变量
https://stackoverflow.com/questions/62727343
复制相似问题