在實際的開發中,和別的模塊定義了自定義的 數據類型,比如:
userMsg.msg文件
Header header
int32 nState
string strImageName
string strYamlName
報錯和原因
各自使用了userMsg.msg文件編譯在自己的工程中,但是在測試中發現相互之間無法收到彼此的數據,具體報錯內容:
ERROR: invalid message type: deepmap_msgs/MapMsg.
If this is a valid message type, perhaps you need to type 'rosmake deepmap_msgs'
因爲在各自編譯msg時,生成的包名默認是工程的名字,因爲包名不統一導致數據無法解析, 所以相互之間的包名首先要一致。
爲了解決這個問題,相互之間使用了同一個包deepmap_msgs,放在工程的src目錄下,進行編譯。
添加依賴
在依