我尝试在 Ubuntu 20 上使用 processing-4.0b6-linux-x64
。
它与 Java 和 p5.js 配合良好。不幸的是,它根本不适用于 Python。
当我通过 ./processing
从终端运行应用程序时,命令行中会出现某种警告:
does not exist created registry at port 8220 could not create registry; assume it's already created
无论如何,GUI 运行良好,但运行的代码非常简单:
def setup():
size(800, 600)
def draw():
pass
不起作用,我收到以下错误列表:
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: 'java.lang.String processing.app.Sketch.getMainProgram()'
at jycessing.mode.run.PdeSketch.<init>(Unknown Source)
at jycessing.mode.PyEditor.runSketch(Unknown Source)
at jycessing.mode.PyEditor.handleRun(Unknown Source)
at jycessing.mode.PyToolbar.handleRun(Unknown Source)
at processing.app.ui.EditorToolbar$1.actionPerformed(EditorToolbar.java:135)
at processing.app.ui.EditorButton.mousePressed(EditorButton.java:191)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6623)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389)
at java.desktop/java.awt.Component.processEvent(Component.java:6391)
at java.desktop/java.awt.Container.processEvent(Container.java:2266)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4572)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:746)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:744)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:743)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
我有java
openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.13+8-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
和javac
javac 11.0.13
已经安装。有什么建议吗?
最佳答案
这只是 beta 6 版本中的一个回归:删除了 Python 模式仍在使用的方法。
已报道here并针对 beta 7 进行了修复(当可用时),或者如果您从源代码构建。
关于python - 处理 4 - 线程 "AWT-EventQueue-0"中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71173094/