2

我试图从 Java 中控制 Jython 脚本的执行,并通过调用 PythonInterpreter.exec() 来执行。该脚本包含对 Java 中定义的类的调用。我将这里的讨论称为这些类“命令”。这些命令也可以通过 RMI 在不同的机器上运行。

由于命令需要一段时间才能完成,所以我想检查调用方的命令执行进度,例如执行完成的百分比。我可以为这些类提供一个 getProgress() 方法,但是访问这个方法似乎是不可能的,因为 PythonInterpreter 不允许调用者访问在其中运行的命令对象。

关于如何做到这一点的任何想法?

4

1 回答 1

2

我的 0.10 欧元:(这不容易)

按照中的描述建立一个工厂

http://wiki.python.org/jython/JythonMonthly/Articles/September2006/1

和一个表示脚本类 (IJScript) 的 Java 接口(包括 run() 和 getProgress() 方法)

您的脚本应如下所示:

class xyscript(IJScript) :

def __init__(self) :
   ...
def run(self) :
   ...
def getProgress(self) :
   ....

在访问接口 IJScript(Java 接口)时运行您的脚本(查看员工示例)

于 2008-10-23T15:17:59.280 回答