【发布时间】:2019-06-13 22:18:32
【问题描述】:
我想使用 ProcessBuilder 运行 bash 脚本。这是我的 xtend 代码:
new ProcessBuilder().inheritIO().command("/bin/bash", "-c", "./myscript.sh")
这是我的 bash 脚本:
#!/bin/bash
python WebRoot/result.py
还有python代码:
#! /usr/bin/env python
import rospy
from std_msgs.msg import Empty
...
问题是我得到一个错误:
Traceback (most recent call last):
File "WebRoot/result.py", line 2, in <module>
import rospy
ImportError: No module named rospy
但是,当我通过终端手动运行代码时,它工作正常。
【问题讨论】:
-
也许你需要这样做:import roslib; roslib.load_manifest('your_package_name')。按照这里:wiki.ros.org/rospy/Troubleshooting
-
这个'import roslib...'去哪儿了?
-
也许你没有从同一个终端运行这两个?检查你是否有例如PYTHONPATH 设置在一个上下文中而不是另一个上下文中,或者如果一个引用了不同的 Python 安装
-
我通过 Eclipse 运行它。这会是个问题吗?