在处理中,我想导入一个我用 Java 编写的库,该库包含一个外部库(一个 .jar 文件)。
Processing 似乎导入了我自己的库,但是当我调用构造函数(它引用外部库中的某些类)时,我java.lang.NoClassDefFoundError
在 Processing GUI 控制台中得到一个。
如果我没有在我的 Eclipse 构建路径中包含 External .jar,而是使用库的实际源代码并导出所有这些,Processing 不会抱怨。
我怎样才能打包这个项目,这样我就不必在我的 Eclipse 项目中包含所有库的源代码(而只包含 .jar 文件)?
更新:根据 NLtelaviv 的建议,我选择导出为 Runnable JAR。对我有用的是选择“将所需的库复制到生成的 JAR 旁边的子文件夹中”选项。在这里,在您的 .jar 输出位置旁边创建另一个文件夹,其中包含引用的 .jar 库。
Update2:另一个有效的选项是“将所需的库提取到生成的 JAR 中”。这样做允许 JAR 在内部访问引用。似乎同样适用于 NLtelaviv 的建议,但情况似乎并非如此。如果您不想有任何额外的文件,请选择此选项。如果您浏览 .JAR 文件,您会注意到外部库位于单独的包文件夹中。