首页 > 解决方案 > 在 Eclipse 中使用 JEP/Pydev 看不到 print 和 println 语句

问题描述

我正在学习 JEP 和 PyDev 插件 eclipse 以及 Python 新手。

我在 Eclipse 控制台选项卡上看不到我的 python print 和 java println 语句。

由于我只是在尝试,我通过创建一个新的 PyDev 模块创建了一个简单的 python 脚本,它只有一行(greetings.py):

print("Hello from python");

当我运行它时,当我在 PyDev 和 Jave EE 透视图中运行它时,我会在控制台中看到它。

接下来,本练习的目的是研究 JEP,看看它是否适合我的项目,因此我使用以下代码创建了另一个 Java 项目:

package my.sand.box;

import jep.Interpreter;
import jep.Jep;
import jep.JepException;
import jep.SharedInterpreter;

public class JepTest {

    public static void main(String[] args) throws JepException {
        // TODO Auto-generated method stub
        System.out.println("hey");

        try (Interpreter interp = new SharedInterpreter()) {
            //interp.exec("import example_package");
            // any of the following work, these are just pseudo-examples

            interp.runScript("full/path/to/greetings.py");
            interp.eval("import sys");
            interp.eval("s = 'Hello World'");
            interp.eval("print s");
             String java_string = interp.getValue("s").toString();
             System.out.println("Java String:" + java_string);
    }
    }

}

我在控制台上看不到任何内容。甚至没有 java println 语句。

我还在一个新的工作区中重新创建了这两个项目,并且可以看到输出。两个工作区之间的不同之处在于,在不工作的工作区中,我打开了其他 java 项目和 pydev 项目。将不胜感激任何建议。

标签: javapythoneclipsepydevjep

解决方案


我之前在使用 Jep 时遇到过类似的问题,诀窍是您需要通过调用正确的方法在 IDE 中重定向 Python 的输出流。

看看https://github.com/ninia/jep/issues/298


推荐阅读