我一直在开发一个基于SWT的项目,该项目旨在部署为Java Web Start,从而在多个平台上使用。

到目前为止,我已经设法解决了SWT所依赖的特定于系统的图书馆出现的出口问题(见相关的thread)。在32位/ 64位的linux和64位窗口上,最终的jar似乎工作起来很好,但在Mac上执行失败,并显示如下输出:

$ java -jar dist/test.jar

Adding { file:/Volumes/LaCie/ChiBE_Local/swt/swt-cocoa-macosx-x86_64-3.6.1.jar } to the classpath

***WARNING: Display must be created on main thread due to Cocoa restrictions.

Exception in thread "main" java.lang.reflect.InvocationTargetException

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)

Caused by: java.lang.ExceptionInInitializerError

at org.eclipse.gef.tools.MarqueeSelectionTool.(MarqueeSelectionTool.java:99)

at org.gvt.MarqueeZoomTool.(MarqueeZoomTool.java:16)

at org.gvt.action.MarqueeZoomToolAction$1.(MarqueeZoomToolAction.java:28)

at org.gvt.action.MarqueeZoomToolAction.createTool(MarqueeZoomToolAction.java:28)

at org.gvt.action.AbstractGEFToolAction.(AbstractGEFToolAction.java:24)

at org.gvt.action.MarqueeZoomToolAction.(MarqueeZoomToolAction.java:20)

at org.gvt.TopMenuBar.createBarMenu(TopMenuBar.java:113)

at org.gvt.ChisioMain.createMenuManager(ChisioMain.java:617)

at org.eclipse.jface.window.ApplicationWindow.addMenuBar(ApplicationWindow.java:235)

at org.gvt.ChisioMain.main(ChisioMain.java:149)

at org.gvt.RuntimeMain.main(RuntimeMain.java:14)

... 5 more

Caused by: org.eclipse.swt.SWTException: Invalid thread access

at org.eclipse.swt.SWT.error(Unknown Source)

at org.eclipse.swt.SWT.error(Unknown Source)

at org.eclipse.swt.SWT.error(Unknown Source)

at org.eclipse.swt.widgets.Display.error(Unknown Source)

at org.eclipse.swt.widgets.Display.createDisplay(Unknown Source)

at org.eclipse.swt.widgets.Display.create(Unknown Source)

at org.eclipse.swt.graphics.Device.(Unknown Source)

at org.eclipse.swt.widgets.Display.(Unknown Source)

at org.eclipse.swt.widgets.Display.(Unknown Source)

at org.eclipse.swt.widgets.Display.getDefault(Unknown Source)

at org.eclipse.swt.widgets.Display$1.run(Unknown Source)

at org.eclipse.swt.graphics.Device.getDevice(Unknown Source)

at org.eclipse.swt.graphics.Resource.(Unknown Source)

at org.eclipse.swt.graphics.Cursor.(Unknown Source)

at org.eclipse.draw2d.Cursors.(Cursors.java:170)

... 16 more

这是我的理解,问题源于Mac OSX上的线程处理,我应该尝试在执行时实现Jst参数-XstartOnFirstThread。这是正确的吗?

假设我对问题的理解是准确的,我有点困惑,因为这个软件是为了跨平台运行在javaws上。我需要创建一个info.plist文件,如果是这样,在包中如何,否则如何“有条件地”在执行时将该参数传递给JVM?

提前致谢,

swt能单独在linux运行么,java – 在Mac上运行基于SWT的跨平台jar相关推荐

  1. mac上安装vbox虚拟机运行win7系统,mac上运行exe

    想在mac运行exe,发现有三种方法: 1. 虚拟机安装win镜像 2. wine或者crossover软件 3. Parallels Desktop 2尝试了发现很多exe都不能运行,3文件很大操作 ...

  2. java苹果_iPhone上运行Java 苹果没兴趣 Sun单干

    3月10日国际报道 Sun正在为苹果iPhone开发一款JVM(Java虚拟机),并计划在6月份发布这款软件,使Java应用软件能够在iPhone上运行. Sun负责Java研究的副总裁克莱因上周表示 ...

  3. 都有哪些应用程序可以在M1 Mac上运行?

    如果您有幸使用新的M1 Mac,或者考虑购买一台Mac,您会想知道您需要使用的应用程序是否可以在其中运行. 苹果公司拥有Rosetta 2-一种用于翻译用于英特尔处理器的代码的工具,以便M1芯片可以理 ...

  4. Parallels 16已可在支持Windows的M1 Mac上运行

    Parallels Desktop 16 被称为macOS上最强大的虚拟机软件,可以在 Mac 下同时模拟运行 Win.Linux.Android 等多种操作系统及软件而不必重启电脑,并能在不同系统间 ...

  5. python mac可以运行win不能运行_Pymssql程序可以在mac上运行,但不能在windows上运行...

    我有一段代码,如果我在mac上运行这个程序(MBA运行mavericks),它的工作原理就像一个符咒.如果我将代码移动到windows box(windows server 2008 R2 64位), ...

  6. winehq-stable-5.0 Download For Mac 在Mac上运行exe文件

    winehq-stable-5.0 Download For Mac 在Mac上运行exe文件 点击下载 (访问密码:312306)

  7. 网页在PC 上运行正常,在IPad上运行出错的故障原因分析及应对措施

    网页在PC 上运行正常,在IPad上运行出错的故障原因分析及应对措施 最近在测试一个管理系统网站时,发现该网站在PC上运行一切正常,但在Ipad 上运行时,提示网页出现问题,需要重新提交表格,复新提交 ...

  8. 别只关注M1芯片的苹果笔记本,iOS APP支持在 Mac上运行也是大事

    将会在当地时间 11 月 10 日(北京时间 11 月 11 日凌晨 2 点)在 Apple Park 举办发布会,这是苹果在本年度秋季举行的第三次发布会,App Store 上似乎透露出发布会的蛛丝 ...

  9. 什么是“ parentalcontrolsd”,为什么它在我的Mac上运行?

    Something called parentalcontrolsd is running on your Mac-at least, that's what you found when you c ...

最新文章

  1. PartialView 加载Js
  2. win10必须禁用的服务_7寸屏的迷你电脑,就算是8GB运行内存,也必须关闭的系统选项...
  3. java 微信隐藏右上角_React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
  4. LeetCode 436. 寻找右区间(二分查找)
  5. 启动瑞星杀毒时提示"应用程序正常初始化(0xc00000ba)失败
  6. 汇编实现的memcpy和memset
  7. 巧妙实现表格奇偶行换色
  8. c语言代码行数统计标准,Shell脚本实现C语言代码行数统计
  9. 多个java性能优化细节
  10. 新年亲朋好友最经典的“互相伤害”,你中过几条?
  11. 普通定时器输出互补PWM带死区
  12. 分别计算二维数组主对角线元素与辅对角线元素的和。
  13. Log4j的基本应用
  14. CDH主机网络接口似乎未以全速运行
  15. Day3-T31项目 异常处理与日志——2021-11-02
  16. python 散点图 置信区间_python matplotlib – 等高线图 – 置信区间
  17. 陈果《好的爱情》读书笔记
  18. Mysql、Oracle、DM、Tbase数据库差异性
  19. mysql内存淘汰_从创建索引过程中内存变化来看SQL Server与MySQL的内存淘汰算法
  20. node版本管理工具nvm

热门文章

  1. 哈哈哈哈哈哈!当前的人工智能有多智障?
  2. 100年前的北京Vlog火了!大神利用AI修复古董纪录片,还原1920年的京城生活
  3. DeepMind、哈佛造出了 AI「小白鼠」,从跑、跳、觅食、击球窥探神经网络的奥秘...
  4. 2020各省份大学排名出炉!
  5. 科技公司最常用的50款开源工具,提升你的逼格~
  6. Django博客系统(退出登录)
  7. 打印零与奇偶数(多线程)
  8. 规格表管理之更新规格表数据
  9. Python递归获取文件夹下面所有文件名字:
  10. 整理对应_JSP第二版课后习题答案【侵权联系我删除】