我正在使用“展开地图”库进行项目,该库要求应用程序为PApplet。但是我在使用javac在命令行上编译和运行这样的程序时遇到了麻烦(它在Eclipse中有效)。这是我现在所拥有的:
目录结构
.
├── build/
├── lib/
│ └── core.jar
├── Makefile
└── src/
└── unfolding/
└── Unfolding.java
生成文件
all:
javac -classpath .:lib/core.jar -sourcepath src -d build src/**/*.java
cd build
java -classpath .:../lib/core.jar unfolding.Unfolding
src / unfolding / Unfolding.java
package unfolding;
import processing.core.*;
public class Unfolding extends PApplet {
public static void main(String[] args) {
PApplet.main(new String[] { "unfolding.Unfolding" });
}
public void setup() {
size(800, 600, OPENGL);
}
public void draw() {
background(0);
}
}
运行Makefile时,出现以下错误:
无法找到或加载主类展开。
我已经读了很多(主要是here),但是据我所知,我做的一切正确。我在这里还想念什么?
我正在使用Java 1.8,core.jar来自处理3。
还要注意,虽然我的班级叫做Unfolding,但是我实际上还没有开始合并Unfolding库,所以这与问题无关。
最佳答案
所以问题是我必须运行一个PApplet并传递主类作为参数。像这样:
java -classpath .:../lib/core.jar processing.core.PApplet unfolding.Unfolding