因此,我正在研究各种 Java 包,它们允许您通过 Java 运行 python 代码。Jython 不处理相当于 python 3.6 的代码。所以基本上,我有用 python 3.6 编写的代码并且需要这样。我需要能够在没有 python 解释器的情况下通过 Java 使用该 python 代码。有这样的包吗?(请注意,我不会更改 python 代码,因为它是一个框架,并且传统上在 python 中使用。我有一个 python 框架,当然,传统上可以通过 python 代码使用,对于 python 3.6。相反,我想成为通过 Java 8 代码使用它。现在我研究了 Jython,但它不处理 3.6 或 3.x。我不会从框架中更改 python 代码。此外,Java 包应该能够运行 python没有解释器的代码。有这样的事吗?Py4j 需要一个 python 解释器。
3 回答
呼啦一阵风
TA贡献1802条经验 获得超6个赞
GraalVM将 Python 代码编译为 Java 字节码并使用graalpython在 JVM 上运行它,但需要注意的是:
这个 Python 实现目前的目标是与 Python 3.7 兼容,但距离那里还有很长的路要走,而且很可能任何需要任何导入的 Python 程序都会遇到不支持的东西。此时,Python 实现可供实验和好奇的最终用户使用。
摇曳的蔷薇
TA贡献1793条经验 获得超6个赞
由于您不会更改它,您可以将 Python 转换为可执行文件并使用 Java 将其作为新进程生成。
ProcessBuilder pb = new ProcessBuilder("C:\\...\\file.exe", command arguments, ..., ...);
pb.start();
作为最简单的解决方案,您可以使用 File I/O 在 Python 和 Java 之间进行通信。
添加回答
举报
0/150
提交
取消