graalvm - 是否可以在 Java "GraalVM"程序中运行 Python 程序?

标签 graalvm

从 GraalVM 示例中,他们有这样的代码来运行一行 Python 代码:

context.eval("python", "\nprint('Hello polyglot world Python!');");

是的,在 Java 程序中工作得很好。

我还可以使用“graalpython”程序从命令行运行 Python 程序。


我的问题是如何从上面提到的 Java 示例运行 python 程序?

context.eval("python", "\nprint('Hello polyglot world Python!');");

我尝试使用“file:”参数,但这不起作用,或者我做错了什么。

例如,这不起作用:

context.eval("python", "file: /path_to_python/test.py");

这行代码给了我:

原始内部错误: java.lang.RuntimeException:未实现

所以,也许这回答了我的问题,但我必须相信你可以从 GRAAL 程序运行 python 脚本,就像运行一行代码一样。因此,这篇文章。

--

是否支持使用graal“eval”从Java程序中运行python程序?如果是这样,我将非常感谢一个使用示例。

非常感谢。

最佳答案

您需要构建一个 Source 对象才能评估文件:

File file = new File("/path_to_python/test.py");
Source source = Source.newBuilder("python", file).build();
context.eval(source);

关于graalvm - 是否可以在 Java "GraalVM"程序中运行 Python 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56598737/

相关文章:

java - GraalVM 应用程序可以部署在 "regular"VM 上吗

java - 宿主对象上的 set 方法

java - IllegalStateException : No language and polyglot implementation was found on the classpath. 确保 truffle-api.jar 位于类路径上

java - IntelliJ IDEA 不索引 GraalVM 库

java - 将 Apache POI 与 GraalVM native 镜像结合使用 - 来自 XMLBeans 的 ClassCastException

graalvm - 从宿主语言注入(inject)成员以到达客体语言作为客体语言类型

java - 使用 GraalPython 作为 Jython 替代品

java - Java 9 是否包含 Graal?

graalvm - 使用 GraalVM 构建 native 应用程序时缺少 cl.exe