如何使用绝对路径从 Java 运行 Python 文件?

2023-11-29

我想运行一个名为 foo 的 python 脚本。我有绝对路径,可以说: /用户/我/pythonscripts/

我尝试过运行:

String cmd="/Users/me/pythonscripts/"
String py="foo"
Runtime.getRuntime().exec("cd "+cmd);
Runtime.getRuntime().exec("python "+py+".py");

但这确实运行了 python 文件。


尝试使用更像...

Runtime.getRuntime().exec("python "+cmd + py + ".py");

反而。每个exec是它自己的进程和多个exec彼此没有任何关系...

您还应该考虑使用ProcessBuilder相反,因为这为您提供了很高的可配置性,例如,您可以更改执行路径上下文......

ProcessBuilder pb = new ProcessBuilder("python", py + ".py");
pb.directory(new File(cmd));
pb.redirectError();
//...
Process p = pb.start();

另外,请注意,Python 的输出流存在问题,这可能会阻止 Java 读取它,直到它完全完成(如果有的话)...

欲了解更多详细信息,请查看Java:有没有办法运行系统命令并在执行过程中打印输出?

另外,请确保python位于 shell 的搜索路径内,否则您还需要指定命令的完整路径

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用绝对路径从 Java 运行 Python 文件? 的相关文章

随机推荐

  • Excel VBA 的密码哈希函数

    我需要一个用 Excel VBA 编写的函数 该函数将使用标准算法 例如 SHA 1 对密码进行哈希处理 具有简单界面的东西 例如 Public Function CreateHash Value As String As String E
  • GAE (Python) 云资源管理器 - 权限被拒绝

    我正在尝试使用应用程序引擎创建一个项目urlfetch但我收到 403 调用者没有权限 错误 我正在生产中运行此代码 应该自动授予其权限 这是代码 from google appengine api import app identity
  • 如何将 sizeof() 运算符应用于非静态类成员方法?

    struct MyClass int foo return 0 unsigned int size sizeof MyClass foo obviously error 我们可以申请吗sizeof 到成员方法outside the clas
  • 无法注销身份 MVC 5(有时)

    我们的网站有时会决定您无法注销 但大多数情况下它可以正常工作 以下是事情的基本内容 我在远程服务器上使用 Chrome 和 IE 并使用 VS 进行本地测试时看到了这个问题 它甚至决定在本地测试中长期存在问题 尝试通过清除 放弃强制删除会话
  • 在 SQL Server 2005 中引用 DEFAULT 定义中的另一列

    我想在表中定义一个具有以下要求的列 该列应该是可插入的 如果 INSERT 语句中提供了该值 则应将其插入 如果 INSERT 语句中未引用该列 则应将其设置为其他两列的总和 由于第一个要求 我无法使用计算列 因为它们不可插入 由于第二个原
  • 如何获取 Amazon EC2 上可用实例类型的列表?

    是否有 API 可以获取 EC2 上可用实例类型的列表 我可以看到您可以下载一个价目表 JSON 文件 但它有 70 兆字节 作为请求包含在应用程序中不太实际 此信息作为 EC2 API 的一部分提供 API 定义了可由特定语言的 SDK
  • 接受有价值和无价值的选项

    我有一个小脚本 我需要它能够接受带值和不带值的参数 cha py pretty xml cha py pretty xml 5 我有这个 parser add argument pretty xml nargs dest xml space
  • 有谁知道这个 php 错误消息背后的含义吗?

    解析错误 语法错误 意外的 T ENCAPSED AND WHITESPACE 期望 T STRING 或 T VARIABLE 或 T NUM STRING 是消息 它来自这行代码 query SELECT FROM users WHER
  • 如何使用 zend 框架读取控制器上的 application.ini

    我的 application ini 中有这些行 我怎样才能阅读user在我的控制器中 resources doctrine dbal connections default parameters driver pdo mysql reso
  • django admin 中基于用户的模型实例过滤

    我正在使用 django 的 admin 来让用户管理特定模型的模型实例 每个用户应该只能管理他的模型实例 管理员除外 他们应该管理所有内容 如何过滤管理员更改列表视图中的对象 想法 我想最优雅的方法是使用对象级权限 有人知道这个的实施吗
  • Windows 版 Github 刚刚删除了我的所有文件

    我只是尽职尽责地将我的工作备份到 github 因为由于在一个很大的工作区域上工作 我在几周内没有进行提交 Windows 版 Github 通知我需要下载最新更新 它就这样做了 我打开了存储库 然后进行了提交 当我点击同步时 它从磁盘中删
  • Git:“更新被拒绝,因为当前分支的尖端落后了..”但是如何查看差异?

    我刚刚完成了一段代码 当我去推送更改时 我得到了已经著名的 hint Updates were rejected because the tip of your current branch is behind hint its remot
  • 如何将捕获的变量移动到闭包内的闭包中?

    此代码是从迭代器生成一组唯一项目的低效 方法 为了实现这一点 我尝试使用Vec记录我所看到的价值观 我相信这Vec需要由最里面的闭包拥有 fn main let mut seen vec let items vec vec 1i32 2 v
  • JWT 授权标头未到达 api

    我将 Laravel 项目部署在支持 mod rewrite 的共享托管服务器上 并希望发送一个名为 Authorization JWT 标头 的标头 但它不会到达控制器 mt htaccess 选项 多视图 索引 重写引擎开启 Handl
  • Android 短信意图过滤器

    我在我的 Android 应用程序中尝试了这段代码来发送 SMS 消息 但它不起作用 该应用程序没有出现在消息列表中 我应该添加一些东西来使其工作吗
  • 更改 ScrollViewer 滚动条自动隐藏计时器的默认时间

    当 ScrollViewer 显示滚动条并且光标在大约 3 秒内没有移动时 滚动条会自动隐藏 有没有办法将该时间设置为大于或小于默认时间 EDIT 重现如下
  • 小鼠:glm.fit:算法未收敛

    我有一个数据集 其中包含大约 12 个级别范围为 2 10 的分类变量以及其他数值变量 约280条记录 我正在使用mice封装在r使用所有默认设置对缺失数据进行插补 但是 当我尝试像这样进行插补时 imp lt mice df 我继续收到此
  • LOC 中的标准 PHP 代码文件长度应该是多少?

    我在公司和个人工作中经常进行 PHP 编码 通常我的文件会变得更大 有时会超过 2000 3000 行长 然后 他们就变得难以管理 我的问题 PHP 代码文件的标准长度应该是 代码行数 你们都分到多长呢 注意 没有面向对象编程 我不使用类
  • 重命名 WooCommerce 3 中缺货产品的“添加到购物车”按钮

    我想重命名 Add to Cart to Sold Out 当产品已售完在 WooCommerce 中 这是我的代码 add filter add to cart text woo custom single add to cart tex
  • 如何使用绝对路径从 Java 运行 Python 文件?

    我想运行一个名为 foo 的 python 脚本 我有绝对路径 可以说 用户 我 pythonscripts 我尝试过运行 String cmd Users me pythonscripts String py foo Runtime ge