【发布时间】:2011-02-09 22:27:05
【问题描述】:
我正在尝试使用 javax.script 从 Java 6 应用程序调用 Jython:
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class jythonEx
{
public static void main (String args[]) throws ScriptException
{
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine pyEngine = mgr.getEngineByName("python");
try {
pyEngine.eval("print \"Python - Hello, world!\"");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
这会导致 NullPointerException:
java.lang.NullPointerException
at jythonEx.main(jythonEx.java:12)
有人知道我在这里做错了什么吗?
编辑:
感谢您的回复!我将 jython.jar 添加到类路径中,它运行正常:
java -cp "./;jython.jar" jythonEx
【问题讨论】:
-
第12行是哪一个? pyEngine.eval("");?
-
@ilikeorangutans:是的,这是第 12 行。
-
没错。我假设 ScriptEngineManager 找不到 python 引擎,但我看不出我做错了什么会导致...
标签: java python jython javax.script