为什么将 processing-core 导入 java 时出错?
Why is there a error while importing processing-core to java?
我对 java 开发还很陌生。我曾经在 Processing3 IDE 中编程,但现在我正在尝试切换到 IntelliJ IDEA。所有教程 (https://www.youtube.com/watch?v=_h2GZgnPcnM) 都导入它,所以我也尝试导入 processing.core.PApplet。我还在项目结构设置的库中添加了 core.jar。
当我导入核心但不将其扩展(无论这意味着什么)到 Main class 时,我没有收到任何错误。将它扩展到 Main class 后,我得到了错误。
import processing.core.PApplet;
public class Main extends PApplet{
public static void main(String[] args) {
//PApplet.main("Main");
}
}
我希望它 运行 正确,因为我遵循了教程中给出的说明。
错误信息是:
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
at processing.core.PApplet.<clinit>(PApplet.java:122)
希望你能告诉我错误信息是什么意思...
谢谢
此问题已记录在 this GitHub 问题中。使用 JDK 9 (x64) 启动 Processing 3.3.6 (x64) 时出现此类错误消息 - 反编译字节码导致此代码错误:
javaPlatform = parseInt(split(javaVersionName, '.')[1]);
但似乎 JDK 9 版本被返回为“9”而不是“9.0”。
String ver = System.getProperty("java.version");
System.out.println(ver);
returns 就是“9”。 PApplet.java
中的代码尝试使用“.”将其拆分。并取 [ 1 ] 个不存在的元素。这会导致您看到的错误。
我 不能 能够在 Windows 10、Processing 3.5.3 和使用 Java 10 上复制您的问题,因此我假设您问题已在 Java 的更新版本中得到修复。从您在问题中发布的视频来看,视频作者似乎正在使用 Java 8 处理 3.3.6 - 确保您具有相同的设置。否则,如果您使用的是最新的 Processing 版本 (3.5.3),请使用更新的 JDK(例如 Java 10)。
我对 java 开发还很陌生。我曾经在 Processing3 IDE 中编程,但现在我正在尝试切换到 IntelliJ IDEA。所有教程 (https://www.youtube.com/watch?v=_h2GZgnPcnM) 都导入它,所以我也尝试导入 processing.core.PApplet。我还在项目结构设置的库中添加了 core.jar。
当我导入核心但不将其扩展(无论这意味着什么)到 Main class 时,我没有收到任何错误。将它扩展到 Main class 后,我得到了错误。
import processing.core.PApplet;
public class Main extends PApplet{
public static void main(String[] args) {
//PApplet.main("Main");
}
}
我希望它 运行 正确,因为我遵循了教程中给出的说明。 错误信息是:
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
at processing.core.PApplet.<clinit>(PApplet.java:122)
希望你能告诉我错误信息是什么意思...
谢谢
此问题已记录在 this GitHub 问题中。使用 JDK 9 (x64) 启动 Processing 3.3.6 (x64) 时出现此类错误消息 - 反编译字节码导致此代码错误:
javaPlatform = parseInt(split(javaVersionName, '.')[1]);
但似乎 JDK 9 版本被返回为“9”而不是“9.0”。
String ver = System.getProperty("java.version");
System.out.println(ver);
returns 就是“9”。 PApplet.java
中的代码尝试使用“.”将其拆分。并取 [ 1 ] 个不存在的元素。这会导致您看到的错误。
我 不能 能够在 Windows 10、Processing 3.5.3 和使用 Java 10 上复制您的问题,因此我假设您问题已在 Java 的更新版本中得到修复。从您在问题中发布的视频来看,视频作者似乎正在使用 Java 8 处理 3.3.6 - 确保您具有相同的设置。否则,如果您使用的是最新的 Processing 版本 (3.5.3),请使用更新的 JDK(例如 Java 10)。