带有SWT的JavaApplicationStub导致问题

时间:2010-06-10 04:46:54

标签: java eclipse macos jar swt

我在Eclipse中创建了一个使用SWT进行GUI的应用程序。我试图使用Eclipse部署来部署应用程序,但似乎当我这样做时,LSUIElement不受尊重,我无法强制应用程序从Dock中消失。非解决该问题,应用程序实际部署正常并且可以运行。

我尝试使用Jar Bundler部署应用程序,但是当我尝试运行应用程序时,出现以下错误:

2010-06-09 21:44:02.564 JavaApplicationStub[89045:2003] * __NSAutoreleaseNoPool(): Object 0x10021f260 of class NSCFString autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.568 JavaApplicationStub[89045:2003] __NSAutoreleaseNoPool(): Object 0x10010a0a0 of class NSCFNumber autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.569 JavaApplicationStub[89045:2003] __NSAutoreleaseNoPool(): Object 0x1001127a0 of class NSCFString autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.582 JavaApplicationStub[89045:2003] __NSAutoreleaseNoPool(): Object 0x7fff70b7af70 of class NSCFString autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.583 JavaApplicationStub[89045:2003] __NSAutoreleaseNoPool(): Object 0x100123ea0 of class NSCFData autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.587 JavaApplicationStub[89045:2003] * __NSAutoreleaseNoPool(): Object 0x100225b90 of class NSCFDictionary autoreleased with no pool in place - just leaking 2010-06-09 21:44:02.588 JavaApplicationStub[89045:2003] *** __NSAutoreleaseNoPool(): Object 0x100225ee0 of class __NSFastEnumerationEnumerator autoreleased with no pool in place - just leaking

在一个非常非常长的列表中。应用程序启动并且似乎挂起,图标不断地在扩展坞中弹跳,并且第一个GUI菜单仅部分加载(看起来其中一个文本框是半可见的,整个矩形是正确的大小,但GUI是没有正确显示。它基本上是悬挂的。)

我希望有人有这个问题的经验,并且可以提供帮助!

谢谢!

1 个答案:

答案 0 :(得分:1)

对于Mac上的捆绑Java应用程序,您需要在Info.plist中名为“Java”的字典中添加属性StartOnMainThread设置为“true”。这应该照顾自动释放池警告。从我在Cocoa的Display实现中看到的代码中,您还需要确保Info.plist中的CFBundlePackageType为'APPL'。

有关使用Jar Bundler创建Info.plist的详细信息,请参阅此PDF file

我看到你在this SWT bug添加了评论。确保你设置了这两个值,你应该没问题。

相关问题