Python 将jython解释器设置为PyDev
我们正在开发一个RCP应用程序,该应用程序应该能够调试/运行jython脚本。这些脚本包含我们的特定注释,因此我们需要创建自己的PythonInterpreter实例,并将其配置为支持我们的模块和处理程序。 我们正试图将PyDev集成到我们的应用程序中,以便获得调试器、编辑器等等,但在尝试将我们自己的jython解释器对象设置为PyDev时遇到了问题 这应该怎么做 通过一些调查,我们可以看到解释器管理器需要可执行文件(jython或python)。是否可以将我们的对象设置为PyDev,或者扩展PyDev的解释器对象并添加我们的处理程序和模块 编辑: 所以,我们遇到的问题是,当我们试图以编程方式将jython jar设置为jython解释器时,我们得到了错误,即它没有主类,不能被视为解释器。我们所做的是,我们找到了合适的jython独立jar,它并没有给我们带来这些问题。 通过设置我们的模块和处理程序,意味着我们可以通过编程方式扩展jython脚本功能,以使解释器知道一些注释。例如,如果我们有python代码:Python 将jython解释器设置为PyDev,python,eclipse-rcp,jython,pydev,interpreter,Python,Eclipse Rcp,Jython,Pydev,Interpreter,我们正在开发一个RCP应用程序,该应用程序应该能够调试/运行jython脚本。这些脚本包含我们的特定注释,因此我们需要创建自己的PythonInterpreter实例,并将其配置为支持我们的模块和处理程序。 我们正试图将PyDev集成到我们的应用程序中,以便获得调试器、编辑器等等,但在尝试将我们自己的jython解释器对象设置为PyDev时遇到了问题 这应该怎么做 通过一些调查,我们可以看到解释器管理器需要可执行文件(jython或python)。是否可以将我们的对象设置为PyDev,或者扩展P
@valueChangeHandler(context.controls.Blank.button_0)
def ASP1_configurePanelSettings(event):
print "Stuff happend"
解释器知道@annotated函数将在某些事件发生时执行。当解释器被实例化时,我们还需要添加带有一些jar文件的库。例如:
interpreter.exec("import sys");
if (modulePaths != null && modulePaths.length > 0)
{
final StringBuilder imports = new StringBuilder();
for (final String modulePath : modulePaths)
imports.append("\nsys.path.append('" + modulePath + "')");
interpreter.exec(imports.toString());
}
所以,要做到这一点,我们需要随时让解释器对象供我们使用。我们注意到,当在pydev编辑器中打开.py文件时,会创建一个新的解释器实例。我们有没有办法在代码中获取这个解释器对象并对其进行操作?您应该能够通过
org.python.pydev.ui.interprevers.JythonInterpreterManager
配置您自己的jython解释器,并根据需要通过org.python.pydev.ui.interprevers.abstractTranspremanager.setInfos>进行配置(iInterpretrinfo[],Set,IProgressMonitor)
方法。我们已经尝试过这个方法(类似于),但是在设置解释器时遇到了一些问题,因为我们试图设置jython standalone jar而不是可执行文件(我们没有可执行文件)。我不知道如何让PyDev意识到它应该使用我们正在实例化的Pythonterpreter对象,或者用我们自己的模块和处理程序扩展PyDev的Pythonterpreter对象。我没有完全理解你的意思…哪些问题?另外,jython总是设置为.jar,而不是可执行的,所以,我不知道什么不起作用,也不知道什么你指的是你自己的模块和处理程序吗?我将用更详细的解释来扩展描述。