我已经尝试了本网站上建议的几种方法以及其他一些无效的方法。
- 运行Angstrom嵌入式Linux,OpenJDK6,Shark VM。
所有.java和.jar文件都存储在目录./src
中jarfiles:j1.jar j2.jar
源代码:Coder.java,WrapperClass.java
成功编译,输出Coder.class,WrapperClass.class,以及其他几个文件,包括Coder $ 1.class到Coder $ 6.class,以及Coder $ Main_thread.class和Coder $ Progress_Bar_Thread.class,任何洞察所有这些.class文件的用途?
运行尝试全部以java.lang.ClassNotFoundException终止。
非常感谢你的帮助。我在NetBeans上运行它并且可以验证它是否是功能代码,只需要让它在Linux上运行即可。
Stacktrace是:
线程“main”中的异常java.lang.NoClassDefFoundError:包/编码器引起:java.lang.ClassNotFoundException:Package.Coder
at java.net.URLClassLoader $ 1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:321)
at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
无法找到主类:Package.Coder。程序将退出
答案 0 :(得分:1)
假设这个结构
/coder
/src
/Package
/Coder.java
/WrapperClass.java
/j1.jar
/j2.jar
您需要从/src
编译为
javac -cp j1.jar:j2.jar Package/Coder.java Package/WrapperClass.java
这将在.class
中创建/Package
个文件。然后,您可以再次从/src
java -cp j1.jar:j2.jar Package.Coder
假设Coder
类有一个main
方法,这是您的切入点。