我读过周围很多,但一直没能找到解决的办法呢。
我使用lwjgl
,它需要2瓶和一个机库运行: lwjgl.jar
, lwjgl_util.jar
和当地人库。 我在各方面我能想到的尝试这样做,反正我与此刻这样的命令尝试:
java - Djava.library.path="libs/natives/" -cp libs/jars/lwjgl.jar:libs/jars/lwjgl_util.jar DisplayTest.class
但在各方面我尝试,我得到:
Exception in thread "main" java.lang.NoClassDefFoundError: DisplayTest/class
Caused by: java.lang.ClassNotFoundException: DisplayTest.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: DisplayTest.class. Program will exit
哦,它可能是值得一提的是,我的工作Linux终端上。 此外,我得到这个,所以我不能真正理解什么在这里在Eclipse中运行完全正常。
首先,你只需要类的名字传递到Java:
java -Djava.library.path="libs/natives/"
-cp libs/jars/lwjgl.jar:libs/jars/lwjgl_util.jar DisplayTest
(换行符为可读性)
我会尝试以下方法:
1)使用CLASSPATH环境变量,如:
CLASSPATH=.:/path/to/lwjgl/lwjgl.jar:/path/to/lwjgl/lwjgl_util.jar
export CLASSPATH
注意点在类路径的开始();
2)运行Java应用程序:
java -Djava.library.path="libs/natives" DisplayTest
如果一切正常,加上上面一个shell脚本的命令。 祝好运!
尝试起飞“.class”的如
的java -Djava.library.path = “库/当地人/” -cp库/罐/ lwjgl.jar:库/瓶/ lwjgl_util.jar DisplayTest.class
会成为:
的java -Djava.library.path = “库/当地人/” -cp库/罐/ lwjgl.jar:库/瓶/ lwjgl_util.jar DisplayTest
通过将“.class”的,你告诉你有一个称为所谓的‘DisplayTest’目录下的‘类’级,这是不是你想达到什么样的命令。 这示出在这一行:
Exception in thread "main" java.lang.NoClassDefFoundError: DisplayTest/class
触发java命令使用-cp或-classpath时。 输入刚才java
命令来查看使用
我也得到了类似的错误。
只要有你的工作目录,(你有你自己的类),与你在你的classpath在运行时需要的库一起。
NoCLassDefFoundError
当机无法找到您时.class
运行时文件(即使它们已经被编译,即在编译时它不会给一个错误,但只有在运行时)
步骤1:编译的javac -classpath “路径/到/ LIB1:路径/到/ LIB2” yourfile.java第2步:运行Java - 类路径“路径/到/ LIB1:路径/到/ LIB2:路径/要/你/ currentDirectory所/ wherethedotclass / filearecreated /” yourfile