Java.Error 使用运行时调用 python 脚本时
Java.Error when calling python script with Runtime
我必须在 java 中调用 python 脚本 project.I 不要使用 jython,因为在脚本中我使用的是 todoist-api。我试过使用这个:
try {
String cmd = "/home/kiryushin/projects/python/stm/venv/lib/stmtest1.py";
Process p = Runtime.getRuntime().exec(cmd);
}
catch (IOException e){e.printStackTrace();}
我明白了
" java.io.IOException: Cannot run program "/home/kiryushin/projects/python/stm/venv/lib/stmtest1.py": error=13, Permisson denied"
我尝试使用 chmod -r 777 和其他命令更改权限,但我再次遇到此错误。
Ubuntu 18.04 磅。 JDK10.Intelij idea社区版
试试:
首先手动检查 sudo
权限。
并修改:
String cmd = "sudo python /home/kiryushin/projects/python/stm/venv/lib/stmtest1.py"
像这样使用你的命令,回显你的密码然后使用 sudo -S 和你的命令
String cmd = 'echo your_password|sudo -S python /home/kiryushin/projects/python/stm/venv/lib/stmtest1.py';
我就是这样解决问题的
- 在没有虚拟环境 (venv) 的情况下重新创建我的项目
- 在 python 脚本中添加 shebang
- 使用 pip3 添加 lib todoist-app
在调用 python 脚本时我写了:
字符串命令="python3.6 /home/kiryushin/projects/python/stm2/stm.py";进程 p = Runtime.getRuntime().exec(cmd);
我必须在 java 中调用 python 脚本 project.I 不要使用 jython,因为在脚本中我使用的是 todoist-api。我试过使用这个:
try {
String cmd = "/home/kiryushin/projects/python/stm/venv/lib/stmtest1.py";
Process p = Runtime.getRuntime().exec(cmd);
}
catch (IOException e){e.printStackTrace();}
我明白了
" java.io.IOException: Cannot run program "/home/kiryushin/projects/python/stm/venv/lib/stmtest1.py": error=13, Permisson denied"
我尝试使用 chmod -r 777 和其他命令更改权限,但我再次遇到此错误。
Ubuntu 18.04 磅。 JDK10.Intelij idea社区版
试试:
首先手动检查 sudo
权限。
并修改:
String cmd = "sudo python /home/kiryushin/projects/python/stm/venv/lib/stmtest1.py"
像这样使用你的命令,回显你的密码然后使用 sudo -S 和你的命令
String cmd = 'echo your_password|sudo -S python /home/kiryushin/projects/python/stm/venv/lib/stmtest1.py';
我就是这样解决问题的
- 在没有虚拟环境 (venv) 的情况下重新创建我的项目
- 在 python 脚本中添加 shebang
- 使用 pip3 添加 lib todoist-app
在调用 python 脚本时我写了:
字符串命令="python3.6 /home/kiryushin/projects/python/stm2/stm.py";进程 p = Runtime.getRuntime().exec(cmd);