java - Java 运行 Python 脚本问题
问题描述
ProcessBuilder pb = new ProcessBuilder("C:\\xxxxxxx\\python.exe", "C:\\xxxxxxxxxx\\1.py");
pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
Process p = pb.start();
我正在尝试从我的 Java 程序运行 Python 脚本。问题是,java run 没有给我任何结果。在 Python 脚本中,有一个 OCR 操作,我正在编写一个 txt 文件。
CMD - 手动 - 运行正常
Python IDLE - 手动 - 运行正常
.bat 不起作用。具有管理权限不起作用。
Java 运行不起作用。
我需要帮助,我需要从 java 程序运行脚本。
解决方案
我解决了这个问题。
问题是;
ProcessBuilder pb = new ProcessBuilder("C:\\xxxxxxx\\python.exe", "C:\\xxxxxxxxxx\\1.py");
pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
Process p = pb.start();
当您运行此代码时,python 脚本将处理该目录中的操作,我的意思是在您的 Java 类的目录中。不管 py 文件在哪里。
就我而言,python 脚本中有 'image.save("x.png")' 行。我希望将图像保存在py文件所在的目录中。但事实并非如此。
推荐阅读
- google-api - Google OAuth2 .Net HttpPost 请求 access_token 中缺少 refresh_token
- java - 在Java中制作一个静态的最终Json对象
- arrays - 将数组的元素值传递给 pine 脚本中的最低或最高函数
- python - 将 PySpark 数据帧写入 MySQL 时的最佳实践
- android - 如何在 Android 中对 `Thread.currentThread()` 进行单元测试
- powershell - 微软office 16补丁安装
- html - 有什么方法可以通过网页抓取来提取网页背景和前景的颜色?
- mysql - 从 mysql 中提取每日数据更改并部署到时间序列数据库
- javascript - 错误:自签名证书nestjs TypeOrmModule
- java - 我无法引用存在的字符串