使用eclipse进行处理,无法让java应用程序运行

时间:2018-06-12 17:23:08

标签: java eclipse processing

所以我只是尝试使用eclipse进行处理,并且遇到了运行 java应用程序的问题。

我基本上遵循本教程:https://processing.org/tutorials/eclipse/

我已经按照步骤进行了操作,但是当我到达这一部分时:

    import processing.core.PApplet;

    public class UsingProcessing extends PApplet{

public static void main(String[] args) {
    PApplet.main("UsingProcessing");

}

}

没有错误或什么都没有,但是当我按下运行(作为java应用程序运行)时,一个java程序打开(没有窗口,我只能看到屏幕底部的程序)。然后它会在几秒钟后关闭。

我也遇到以下错误:

java.lang.NoClassDefFoundError: com/apple/eawt/QuitHandler
at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3119)
at java.base/java.lang.Class.getMethodsRecursive(Class.java:3260)
at java.base/java.lang.Class.getMethod0(Class.java:3246)
at java.base/java.lang.Class.getMethod(Class.java:2065)
at processing.core.PApplet.runSketch(PApplet.java:10707)
at processing.core.PApplet.main(PApplet.java:10504)
at processing.core.PApplet.main(PApplet.java:10486)
at UsingProcessing.main(UsingProcessing.java:6)
Caused by: java.lang.ClassNotFoundException: com.apple.eawt.QuitHandler
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 9 more

这部分代码至少应该给我一个空的草图,但我什么都没得到。

这家伙让它上班但我不能...... https://www.youtube.com/watch?v=0cqSjyvA8EY

我可以向您保证,我已经正确导入了处理库,因此这不是问题所在。我相信它是我的java的一些问题?我正在使用macbook pro和以下java:

Java(TM)SE运行时环境18.3(版本10.0.1 + 10)

Java HotSpot(TM)64位服务器VM 18.3(版本10.0.1 + 10,混合模式)

感谢所有的帮助,我对此有点新意,所以如果有什么不对的话请保持温和!

修改

我也尝试过没有运气的IntelliJ,同样的事情,java打开一小段时间然后关闭。该视频是我的向导:https://www.youtube.com/watch?v=_h2GZgnPcnM

2 个答案:

答案 0 :(得分:2)

  

我可以向您保证,我已经正确导入了处理库,因此这不是问题所在。

您需要的不仅仅是core.jar库。在您的情况下,您需要包含.jar类的任何com/apple/eawt/QuitHandler文件。

This answer表示您正在寻找的.jar附带Mac JDK。尝试将.jar文件添加到类路径中。

答案 1 :(得分:0)

所以我相信问题有点解决了。问题是(我认为)与苹果使用的java(?)。所以我降级到Processing 2 core.jar ,一切正常。

在此处找到:https://github.com/processing/processing/issues/5371

以及我不完全理解的链接:https://github.com/processing/processing/wiki/Supported-Platforms#java-9

那里的那个人建议你应该降级你的jdk(?),但我认为它是处理2讨论的(当我这样做时它确实工作)。所以现在,处理eclipse所做的一切都必须通过处理2来完成。

这很奇怪,因为有关处理网站的教程使其适用于处理3

编辑:之前的答案是在五年多前提出的。