我在部署 JNLP 小程序时遇到了一些问题。
出于某种原因,如果我没有将所有必要的文件与 JNLP 文件放在同一目录中,Java 会抱怨它找不到它。
示例 jnlp 文件:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file:/C:/temp/lwjgl_test/" href="LWJGLTest.jnlp">
<information>
<title>LWJGL Test</title>
<vendor>helloworld</vendor>
</information>
<resources>
<!-- Application Resources -->
<j2se version="1.7+"
href="http://java.sun.com/products/autodl/j2se" />
<jar href="LWJGLTest.jar" main="true" />
<jar href="lib/lwjgl.jar"/>
<jar href="lib/windows.jar"/>
</resources>
<applet-desc
name="LWJGL Test"
main-class="LWJGLTest"
width="640"
height="480">
</applet-desc>
<update check="background"/>
</jnlp>
我已经将文件夹移出lwjgl.jar
并windows.jar
移出lib
到与其他所有文件夹相同的文件夹中并且它可以工作,但是我不明白为什么如果我不这样做会出现类路径异常。我还需要更改其他内容才能使其正常工作吗?
堆栈跟踪:
Exception in thread "Thread-9" 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:73)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
at org.lwjgl.Sys.loadLibrary(Sys.java:95)
at org.lwjgl.Sys.<clinit>(Sys.java:112)
at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
at LWJGLTest$2.run(LWJGLTest.java:67)
at java.lang.Thread.run(Unknown Source)