Tag: jython

无法运行Grinder Java Test Framework

我不能用Jython运行Grinder3框架。 我已经下载了它,我看到有一个带有一些.jar文件的lib /文件夹。 grinder3提供了一些例子(用python编写)。 当我尝试使用jython运行这些示例时,我收到错误,错误告诉我无法找到lib。 我应该如何包含那些能够运行示例的jar? Traceback (most recent call last): File “amazon.py”, line 18, in from net.grinder.script.Grinder import grinder ImportError: No module named ne

如何使用jython jar将python模块添加到java中

我使用Netbeans平台来构建我的应用程序uasing java languge。我需要使用jython调用一些python函数到java类中是唯一的方法。 不幸的是,当我尝试运行程序时,显示的错误表明应用程序没有找到以下模块 Exception in thread “main” Traceback (most recent call last): File “script.py”, line 13, in import re ImportError: No module named re File “script.py”, line 14, in from string import * ImportError: No module named string Java Result: 1 这是script.py中的代码,我想在其java类中调用其中一个方法 #!/pkg/ldc/bin/python2.1 import xml.parsers.expat import re from string import * import sys 如何将这些python模块添加到我的应用程序中?

将jar中的python文件捆绑在一起以便通过jython进行访问

在下面的代码中,我只需使用jython从java代码执行test.py. public static void main(String[] args) { org.python.util.PythonInterpreter python = new org.python.util.PythonInterpreter(); python.execfile(“test.py”); … 我的问题是test.py需要在运行jar文件的同一目录中。 我需要在jar中捆绑这个test.py,并且仍然可以使用jython执行它。 在如何使用python调用jar文件中的python脚本中建议的方法? 使用ClassLoader类中的getResourceAsStream方法读取字符串中的脚本对我不起作用,因为我的test.py导入了更多捆绑在jar中的python脚本。 刚接触java和jython我真的很困惑。 任何帮助将受到高度赞赏..!

将JavaFX与Python结合使用

我想知道是否可以使用JavaFX设计GUI ,然后结合一些Python代码(例如使用JavaFX创建一个按钮,然后在Python中编写处理程序代码以提供一些function)。 JavaFX非常适合设计一个非常好的GUI,我需要Python来控制一个机器人(这些库只能在Python中使用)。 我浏览了网页,发现了Jython ,但我无法理解它是否允许我使用这些第三方Python库。 有没有人有一个好的建议或任何我可以看到的来源? 任何信息,将不胜感激。 先谢谢你。

独立Jython:导入错误(Apache-POI)

在我尝试将Jython与Apache-POI一起使用时,Jython独立jar会抛出ImportErrorexception。 下面你会发现我如何调用我的Jython脚本: java -cp C:\jAutoMailerScript\lib\poi-3.9-20121203.jar -jar jython.jar main.py 错误: 回溯(最近的呼叫最后): 文件“main.py”,第32行,in 来自org.apache.poi.hssf.usermodel import * ImportError:没有名为apache的模块 这是第32行的代码: from org.apache.poi.hssf.usermodel import * 为了使用Java的第三方应用程序,Jython是否有任何限制? 提前致谢,

如何处理Microsoft Outlook winmail.dat? 还有其他惊喜吗?

我决定我真的不喜欢微软和他们的方式。 请你给我一些关于如何在电子邮件中处理winmail.dat的说明,是否有一个jython库或一个允许我处理这个问题的java库。 我刚刚完成了一个电子邮件处理程序,用java 5中的jython 2.2.1编写。在最后的加载测试中,我意识到应该采用标准MIME电子邮件格式的附件现在被绑定在一些blasted winmail.dat中,意味着许多不同的Outlook客户端使用此winmail.dat污染互联网,这意味着我需要支持winmail.dat。 因此,我的程序无法正确处理数据。 请你详细介绍一下winmail.dat是什么以及为什么它会让我们烦恼。 还有什么惊喜可以预料到!? 还有什么我需要注意的,到目前为止,标准的MIME电子邮件都可以满足。 盒子里还有其他插孔吗? 非常感谢你的时间。

Jython webapp性能

我目前正在构建一个Jython Web应用程序,但我担心Jython应用程序的性能。 我感到很欣慰的是,我可以在一个单独的Java jar中编写任何计算密集型任务,并从Jython调用它们。 有没有人在这样做时遇到问题,或者对这样的设置有问题?

为什么我的Swing窗口会在几秒钟后自动关闭?

编辑:如果多个标签混淆,我在Jython工作。 这是我的SSCCE : from javax.swing import JFrame window = JFrame(‘Test’, defaultCloseOperation = JFrame.EXIT_ON_CLOSE, size = (800, 600)) window.visible = True 窗口打开,在那里停留几秒钟,然后关闭。 到目前为止,我发现唯一的解决方案是添加while True: pass到最后,这似乎表明问题是window超出范围,因此它被清理并且必须关闭。 事实上,这可能是我之前遇到的同一问题的另一个症状。 但是,我不认为在无限循环中浪费周期是最好的解决方案。 我想我可以通过在每个循环上睡几秒钟来减少问题,但我仍然希望能够正确地解决这个问题。 以“正确的方式”做事,在EDT上创建窗口,给出完全相同的行为: from javax.swing import JFrame, SwingUtilities from java.lang import Runnable class Foo(Runnable): def run(self): window = JFrame(‘Test’, defaultCloseOperation = JFrame.EXIT_ON_CLOSE, size = (800, 600)) window.visible = True foo […]

从Eclipse插件使用Jython

从Eclipse插件运行时,我很难让jython正常工作。 我有一个简单的对象工厂,它加载符合Java接口的python模块。 所有这些在独立模式下都能正常工作。 但是,当我将其打包为eclipse插件时,我会根据一些变量得到不同的错误: 鉴于我的java包是com.foo。 1)如果我在没有修改任何路径的情况下运行,我得到:“没有名为foo的模块” 2)如果我然后使用以下命令将我的java jar添加到sys.path: PythonInterpreter interp = new PythonInterpreter(null, new PySystemState()); PySystemState sys = Py.getSystemState(); sys.path.append(new PyString(“myjar…”)); 我明白了: a)我的python模块的构造函数被调用(在constr中打印出来) b)我从调用tojava返回一个PySingleton 。 名称字段为“错误”。 3)此时,我尝试使Eclipse中的类路径与Standalone完全相同,因此我在调用python解释器之前在运行时将我的jar添加到类路径中。 我得到了我最喜欢的错误消息:SystemError:自动代理初始化应该只发生在代理类上 这个让我发疯。 我对独立模式的速度感到印象深刻。 在Eclipse下运行应该有那么大的不同? 我认为它应该只是类路径的问题,但到目前为止,似乎并不是这样。

如何从java运行multithreadingjython脚本?

我正在构建一个Java框架,它将监听事件,然后在Jython中处理它们。 不同的事件类型将被发送到不同的脚本。 由于在调用PythonInterpreter.exec()时jython需要相当长的时间来编译脚本,因此我必须预编译脚本。 我是按照以下方式做的: // initialize the script as string (would load it from file in final version) String script = “print ‘foo'”; // get the compiled code object PyCode compiled = org.python.core.__builtin__.compile( script, “”, “exec” ); PyCode编译对象将被推送到存储库并在事件进入时使用 PythonInterpreter pi = new PythonInterpreter(); pi.set( “variable_1”, “value_1”); pi.set( “variable_x”, “value_x”); pi.exec( compiled ); 现在,对于我的难题 – 可能会发生某些类型的多个事件同时发生 […]