仅仅通过在Eclipse中向Java构建路径添加SWT二进制文件,就可以让我的SWT应用程序在任何地方运行吗?
我在Eclipse中使用WindowBuilder制作了一个SWT应用程序。我将项目导出为Windows 10上可运行的Jar文件,然后将该文件传输到我的Macosx机器,我收到了这个错误仅仅通过在Eclipse中向Java构建路径添加SWT二进制文件,就可以让我的SWT应用程序在任何地方运行吗?,java,swt,Java,Swt,我在Eclipse中使用WindowBuilder制作了一个SWT应用程序。我将项目导出为Windows 10上可运行的Jar文件,然后将该文件传输到我的Macosx机器,我收到了这个错误 $ java -jar Downloads/SWTApplication.jar Exception in thread "main" java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: no swt-win32
$ java -jar Downloads/SWTApplication.jar
Exception in thread "main" java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:
no swt-win32-4926r21 in java.library.path
no swt-win32 in java.library.path
Can't load library: /Users/myhomefolder/.swt/lib/macosx/x86_64/libswt-win32-4926r21.jnilib
Can't load library: /Users/myhomefolder/.swt/lib/macosx/x86_64/libswt-win32.jnilib
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:344)
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:256)
at org.eclipse.swt.internal.C.<clinit>(C.java:19)
at org.eclipse.swt.widgets.Display.<clinit>(Display.java:143)
at MainWindow.open(MainWindow.java:58)
at MainWindow.main(MainWindow.java:47)
$java-jar下载/SWTApplication.jar
线程“main”java.lang.UnsatisfiedLinkError中出现异常:无法加载SWT库。原因:
java.library.path中没有swt-win32-4926r21
java.library.path中没有swt-win32
无法加载库:/Users/myhomefolder/.swt/lib/macosx/x86_64/libswt-win32-4926r21.jnilib
无法加载库:/Users/myhomefolder/.swt/lib/macosx/x86_64/libswt-win32.jnilib
位于org.eclipse.swt.internal.Library.loadLibrary(Library.java:344)
位于org.eclipse.swt.internal.Library.loadLibrary(Library.java:256)
在org.eclipse.swt.internal.C.(C.java:19)
位于org.eclipse.swt.widgets.Display(Display.java:143)
在MainWindow.open(MainWindow.java:58)
在MainWindow.main(MainWindow.java:47)
我尝试在Eclipse中将swt.jar文件的windows和mac版本添加到Java构建路径中,但没有成功。有没有一种方法可以通过将SWT添加到Java构建路径来让它工作?如果有,请告诉我此过程是否还有更多步骤
我希望程序能在我的Mac电脑上运行,就像我双击Windows电脑上的Jar文件一样,但它返回了上面的错误
请耐心听我说,因为我对Java和SWT还比较陌生。在这里从日志中签出您的应用程序似乎正在mac os上搜索SWT windows库。请使用正确的库。可能的副本您确实需要为每个平台使用正确的SWT为平台构建单独的版本。例如,Eclipse只是一个非常大的SWT应用程序,每个平台都有单独的构建。