Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: More on NetBeans failure to start




- Info from the NetBeans About box doesn't say anything about 64- bit mode
(admittedly a weak point ... who says it has to? Or maybe it does and I'm
not understanding?):
Product Version: NetBeans IDE 6.1 (Build 200805300101)
Java: 1.5.0_16; Java HotSpot(TM) Client VM 1.5.0_16-133
System: Mac OS X version 10.5.5 running on i386; MacRoman; en_US (nb)
Userdir: /Users/gnunes/.netbeans/6.1

If that's the info from the Terminal-launched NetBeans, then it's running in 32-bit mode. I infer this from the "running on i386", which is the 32-bit Intel architecture. If it were running 64-bit, it would be "running on x86_64".


I'm guessing that it's not the info from the Finder-launched NetBeans, because it apparently crashes before it can ever get to the point of offering you an About box.

I drew the correlation between crashing and 64-bit simply by reading the crash-log you linked to:

http://www.netbeans.org/issues/show_bug.cgi?id=146119

Go to that page and search for the text "X86". It should be more or less apparent that the crashed program is running as 64-bit:

1. The code type is X86-64.
2. The KERN_INVALID_ADDRESS value is a 64-bit address.
3. The thread state is 64-bit.

How it got to be running as 64-bit, I couldn't begin to guess. You'd have to look at the shell script that NetBeans seems to have as its primary CFBundleExecutable. I say "seems to have" because I'm inferring this from a comment in the bug-report URL that says "The start up script inside Netbeans.app is a .sh script ..."



Could some native part of NetBeans (and IDEA) be executing 64-bit code? Or
perhaps Java runs in 64-bit unless told otherwise. Or maybe some other
mechanism is invoking 64-bit mode?

The command-line 'java' command will be 32-bit (AFAIK) unless told otherwise with the -d64 command-line option. You can also explicitly run 32-bit with -d32. See 'man java'. (The default might be different after the most recent Java Update from Apple has been installed. Apparently a number of options for choosing the default Java are different.)


A given process is either 32-bit or 64-bit: it can't switch between modes. However, a 32-bit process can start a 64-bit process, or vice versa. So in the general sense, yes, it's possible that some part is executing 64-bit code while another part is executing 32-bit code. You'll have to ask a more specific question, and you'd probably have to ask it of the product provider (Sun or Jetbrains, as appropriate).

Some bundled apps on Leopard give you the choice, using Finder's Get Info window, to run the app as 64-bit or 32-bit. Do a Get Info on / Applications/Chess.app and you'll see a checkbox for "Open in 32-bit mode". If an app has only 64-bit or only 32-bit code, the checkbox will be absent. For example, look at TextEdit.app.

I did these Get Info's on OS version 10.5.2. It's possible that later updates have more 64-bit-capable apps.

Anyway, do a Get Info on NetBeans.app and see what's there. If it gives you a 32-bit option, check it. If it doesn't, it could still be running as 64-bit (or 32-bit) based on the contents of its startup shell script. You'll have to dig into NB.app to find out. It's probably near line 466, if the crash message is to be believed.

  -- GG

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden

This email sent to email@hidden


Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.