Eclipse:导出项目,Windows和Mac都可以运行它

时间:2017-03-14 02:59:25

标签: java windows eclipse macos

我刚刚完成了对新Java应用程序的编码,我想将其导出为可以在Windows和Mac上读取的格式(或者,如果需要,可以在两种不同的格式中读取)。我尝试右键单击我的项目并导出到可运行的JAR文件,选择将所需的库提取到生成的JAR中。

由于我以前从未从Eclipse导出过(我习惯使用Unity,在较小程度上是Visual Studio),我确信我做错了,因为它无法在macOS Sierra或Windows上打开10.我做错了什么?谢谢!

编辑:这是我尝试在JAR上运行java -jar时的输出(文件名已被混淆):

***WARNING: Display must be created on main thread due to Cocoa restrictions.
Exception in thread "main" org.eclipse.swt.SWTException: Invalid thread access
    at org.eclipse.swt.SWT.error(SWT.java:4533)
    at org.eclipse.swt.SWT.error(SWT.java:4448)
    at org.eclipse.swt.SWT.error(SWT.java:4419)
    at org.eclipse.swt.widgets.Display.error(Display.java:1089)
    at org.eclipse.swt.widgets.Display.createDisplay(Display.java:840)
    at org.eclipse.swt.widgets.Display.create(Display.java:823)
    at org.eclipse.swt.graphics.Device.<init>(Device.java:129)
    at org.eclipse.swt.widgets.Display.<init>(Display.java:722)
    at org.eclipse.swt.widgets.Display.<init>(Display.java:713)
    at org.eclipse.swt.widgets.Display.getDefault(Display.java:1419)
    at myJar.MainWindow.main(MainWindow.java:19)

1 个答案:

答案 0 :(得分:0)

您似乎正在运行SWT应用程序。在macOS上,运行jar以正确运行SWT时必须指定-XstartOnFirstThread选项:

jar -XstartOnFirstThread -jar xxxx.jar

SWT应用程序还有一个本地库,每个平台都有所不同。