Java-库路径错误
我正在尝试开始我的java游戏,但java命令行有一些问题: 以下是我键入的内容:Java-库路径错误,java,path,Java,Path,我正在尝试开始我的java游戏,但java命令行有一些问题: 以下是我键入的内容: C:\>java-Djava.library.path=%cd%\lib-jar game.jar 下面是我得到的: Exception in thread "main" java.lang.NoClassDefFoundError: org/lwjgl/LWJGLException at com.game.Main.main(Main.java:7) Caused by: java.lang.C
C:\>java-Djava.library.path=%cd%\lib-jar game.jar
下面是我得到的:
Exception in thread "main" java.lang.NoClassDefFoundError: org/lwjgl/LWJGLException
at com.game.Main.main(Main.java:7)
Caused by: java.lang.ClassNotFoundException: org.lwjgl.LWJGLException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 1 more
我可以使用Eclipse(使用Run as Java应用程序)启动游戏,但在菜单之后,我出现以下错误:
Exception in thread "Thread-5" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.lwjgl.Sys$1.run(Sys.java:72)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
at org.lwjgl.Sys.loadLibrary(Sys.java:81)
at org.lwjgl.Sys.<clinit>(Sys.java:98)
at org.lwjgl.opengl.Display.<clinit>(Display.java:129)
at com.game.displaygui.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
线程“thread-5”java.lang.UnsatifiedLinkError中的异常:java.library.path中没有lwjgl
位于java.lang.ClassLoader.loadLibrary(未知源)
位于java.lang.Runtime.loadLibrary0(未知源)
位于java.lang.System.loadLibrary(未知源)
位于org.lwjgl.Sys$1.run(Sys.java:72)
位于java.security.AccessController.doPrivileged(本机方法)
位于org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
位于org.lwjgl.Sys.loadLibrary(Sys.java:81)
位于org.lwjgl.Sys(Sys.java:98)
在org.lwjgl.opengl.Display上(Display.java:129)
在com.game.displaygui.run(未知源)
位于java.lang.Thread.run(未知源)
lwjgl.jar
已放入文件夹\lib
你能跟我解释一下我明白了吗
谢谢。您应该明确指定要包括哪些lib文件(以;)分隔):
-cp%cd%\lib\lwjdl.jar;%cd%\lib\.jar
不要试图使用通配符*,因为它弊大于利(根据以前的经验:)这是因为lwjgl库由两个组件组成:
- 包含Java代码的.jar文件
- 和本机二进制库(根据您的操作系统,可以是.so或.dll或.dylib)
java.lang.NoClassDefFoundError
,因为您应该将库路径设置为包含本机库的文件夹,或者将类路径设置为包含真实的lwjgl.jar文件
Eclipse出现的第二个错误是一个连续的步骤:类路径包含jar库,但它无法找到附加到它的本机库,您可以通过以下方式修复它:
您可以使用
java.library.path
选项指定要加载的本机库的位置。在该选项所指向的位置,您将放置LWJGL所需的所有dll
或.so
文件。另一方面,您需要通过-classpath
选项确保所有必需的JAR文件都在类路径上。目前,您的JAR文件位于错误的目录中。在Eclipse中,如果您使用maven
将以下内容添加到项目“运行”:“VM选项”
我不明白我在这里该做什么?
-cp %cd%\lib\lwjdl.jar;%cd%\lib\<another-lib>.jar
-Djava.library.path=yourpath/youproject/java/target/natives