ROS Python - 自作サービスのインポートエラー
エラー
Pythonノードで自作Serviceのライブラリが読み込めないエラーが発生しました
my_server.py
...
from my_servs.srv import *
...
error
Traceback (most recent call last):
File "/home/hoshina/catkin_ws/src/pca_server/scripts/pca_server.py", line 3, in <module>
from pca_server_srvs.srv import *
ModuleNotFoundError: No module named 'pca_server_srvs'
serviceのpythonライブラリが生成されているか確認
ls ~/catkin_ws/devel/lib/python3/dist-packages
>> my_srvs
生成されていればオッケー
>>
何も出なければだめ
次のサンプルをビルドしてserviceのライブラリが生成されるか確認
https://github.com/fairlight1337/ros_service_examples
git clone https://github.com/fairlight1337/ros_service_examples.git
catkin build
ls ~/catkin_ws/devel/lib/python3/dist-packages
>> ros_service_examples
オッケー,このリポジトリのCMakeLists.txtとpackage.xmlを参考にして、自分のものを修正する
エラーが治らない場合
pythonに以下を追加してライブラリのパスが通っているか確認
import sys
print(sys.path)
パスが通っていない場合は
source ~/catkin_ws/devel/setup.bash
をしたり、ターミナルを再立ち上げしたりする
C++でincludeできない場合
catkin_ws/devel/include/ 内にヘッダーファイルが生成されているか確認
ない場合
serviceパッケージのCMakeLists.txt内に
generate_messages()
を入れ忘れている可能性大
環境
- ubuntu 20.04
- ros noetic
Author And Source
この問題について(ROS Python - 自作サービスのインポートエラー), 我々は、より多くの情報をここで見つけました https://qiita.com/hoshianaaa/items/77f7e12c115581724d1e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .