views:

87

answers:

1

I created an application in Eclipse that uses SWT for the GUI. I've attempted to deploy the application using the Eclipse deploy, but it seems that when I do that, LSUIElement is not respected, and I can't force the application to disappear from the dock. Nonwhistanding that issue, the application actually deploys ok and is runnable.

I attempted to deploy the application using Jar Bundler, but when I try to run the application, I get the following errors:

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

in a very, very, very, long list. The application launches and appears to hang with the icon constantly bouncing in the dock, and the first GUI menu only partially loaded (it looks like one of the text boxes is semi visible, and the overall rectangle is the right size, but the GUI is not showing properly. It is essentially hung.)

I'm hoping someone has had experience with this problem, and may be able to help!

Thanks!

+1  A: 

For a bundled Java application on the Mac you need to add the property StartOnMainThread set to 'true' inside a dictionary named 'Java' in your Info.plist. That should take care of the autorelease pool warnings. From the code I see in Cocoa's implementation of Display, you also need to make sure you have CFBundlePackageType of 'APPL' in your Info.plist.

See this PDF file for more information about making an Info.plist with Jar Bundler.

I see you added a comment to this SWT bug. Make sure you have these two values set and you should be okay.

Scott K.
That was perfect, thanks!
mystro