java - 在 Java 中创建 JEP SubInterpreter 时命中 "Fatal Python error"

标签 java jep

我在 Windows 10 上用 Java 创建 JEP SubInterpreter 时遇到以下错误:

Fatal Python error: init_sys_streams: can't initialize sys standard streams
Python runtime state: core initialized
OSError: [WinError 6] The handle is invalid

然后进程退出。

这个错误并不是每次都会出现,几乎是十分之一。

对这个错误有什么想法吗?

谢谢!

最佳答案

这是由C代码中的freopen()引起的,用fopen()替换它,dup2()可以修复它。 请引用:https://github.com/ninia/jep/issues/242

关于java - 在 Java 中创建 JEP SubInterpreter 时命中 "Fatal Python error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61141048/

相关文章:

java - 下面的java代码是否保证对Windows中未打开的文件进行独占锁定?

java - SQLite JDBC PRAGMA 设置

java - 安全发布以及不可变与有效不可变的优势

java - Intellij IDEA 类型迁移失败

java - JEP 295 AOT : Objects compiled multiple times

python - 使用 JEP 将数据帧从 scala 传递到 python

java - 是否打算彻底改造现有的 Java 平台类 (JEP 360)?

Java 8 stream.collect(Collectors.groupingBy()) 在 JPA 获取的列表/对象上使用时返回大小为 0 的映射