我有一個java webstart應用程序,它使用swt作爲接口(幷包含DJ Native Swing)。該應用程序在Windows上運行良好,直到我嘗試將linux和mac osx swt jar添加到應用程序以支持這些平臺。當從只有正確jar鏈接的netbeans啓動時,該應用程序在linux下運行良好,但在任何平臺上通過java webstart啓動應用程序時,似乎加載了錯誤的jar文件。Java webstart在windows上加載linux swt jars
這就是我在我的launch.jnlp(除其他東西):
<resources os="Windows" arch="x86">
<j2se java-vm-args="-Xmx512m" version="1.5+"/>
<jar href="lib/swt-win32-x86.jar"/>
<nativelib href="lib/swt-win32-x86.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<j2se java-vm-args="-Xmx512m" version="1.5+"/>
<jar href="lib/swt-win32-x86_64.jar"/>
<nativelib href="lib/swt-win32-x86_64.jar"/>
</resources>
<resources os="Windows" arch="amd64">
<j2se java-vm-args="-Xmx512m" version="1.5+"/>
<jar href="lib/swt-win32-x86_64.jar"/>
<nativelib href="lib/swt-win32-x86_64.jar"/>
</resources>
<resources os="Linux" arch="i386">
<j2se java-vm-args="-Xmx512m" version="1.5+"/>
<jar href="lib/swt-linux-x86.jar"/>
<nativelib href="lib/swt-linux-x86.jar"/>
</resources>
<resources os="Linux" arch="amd64">
<j2se java-vm-args="-Xmx512m" version="1.5+"/>
<jar href="lib/swt-linux-x86_64.jar"/>
<nativelib href="lib/swt-linux-x86_64.jar"/>
</resources>
<resources os="Mac OS X" arch="x86_64">
<j2se java-vm-args="-XstartOnFirstThread -Xmx512m" version="1.5+"/>
<jar href="lib/swt-macos-x86_64.jar"/>
</resources>
<resources os="Mac OS X" arch="x86">
<j2se java-vm-args="-XstartOnFirstThread -Xmx512m" version="1.5+"/>
<jar href="lib/swt-macos.jar"/>
</resources>
如果我理解正確的話,這將導致在Windows(取決於弓)只有SWT-win32-正在加載x86.jar。但是,當我在Windows 7 64位上啓動應用程序,但使用32位jvm時,出現以下錯誤: NativeSwing [1]:引起:java.lang.UnsatisfiedLinkError:無法加載SWT庫。原因: NativeSwing [1]:java.library.path中沒有swt-gtk-4234 NativeSwing [1]:java.library.path中沒有swt-gtk NativeSwing [1]:無法加載庫:C: \ Users \ dolf.swt \ lib \ win32 \ x86 \ swt-gtk-4234.dll NativeSwing [1]:無法加載庫:C:\ Users \ dolf.swt \ lib \ win32 \ x86 \ swt-gtk .dll
當然,在Windows上不能找到swt-gtk,它只能在Linux上使用。如果我在Java的臨時Internet文件查看器下的java控制面板中查看資源,我確實看到java webstart已經下載了swt-linux-x86.jar和swt-win32-x86.jar。顯然,java webstart正在下載錯誤的jar文件。
我希望任何人有一個想法,爲什麼這是錯的。
*「歡呼聲, Dolf。」*這是4行噪音。離開sigs。出問題。 2)*「爲什麼這會出錯?」*是一個可能從這些詞語推斷的問題。這是你的問題嗎?如果是這樣,交替添加它作爲[編輯](http://stackoverflow.com/posts/16065539/edit)*形成一個明確的問題*並編輯到..question中。 –