Java调用错误的python版本

标签 java python

我正在尝试使用 Process 和 ProcessBuilder 从 Java 程序运行 Python 脚本,但是 Java 一直在使用错误版本的 Python。 (脚本需要3.6.3运行,Java运行Python 2.7)

然而,当我从终端(Java 之外)运行脚本时,它运行正确的 Python (3.6.3)。如何改变 Java 调用时运行的 Python 版本?

最佳答案

简短的版本是它随您的 PATH 环境变量而变化。

在 Windows 下,Technet有答案。向下滚动到“命令搜索序列”部分。 This answer解释得很好。

对于类 UNIX 操作系统,this answer非常详细。

有两个非常有用的命令可用于确定将调用哪个可执行文件:which类 UNIX 和 where适用于较新的 Windows。

造成 Java 和终端之间差异的最可能原因是您的 PATH 不同。也许您的 Java 版本正在使用修改后的 PATH 运行?某种启动脚本可能会改变它。

关于Java调用错误的python版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51813909/

相关文章:

java - 如何将字符串转换为字符串数组

java - 使用 MySQL 和 PreparedStatement 的 NullPointerException 和参数索引超出范围异常

java - 项目文件上的 intellij 图标

Python:枚举值与命名单元

python - 从 Pandas 数据帧生成相似度矩阵

java - 为什么我的碰撞检测方法不起作用?

java - html :text tag not working

python - AWSCLI 和 AWSEBCLI 有什么区别?

python - 如何在 Django Rest Framework 中批量删除实例?

python - 使用非常重尾的数据在 Pandas 中绘制直方图