Upgrading to leopard - my experiences.

4 views
Skip to first unread message

Knubo

unread,
Nov 9, 2007, 12:12:22 PM11/9/07
to The Java Posse
Upgrading to leopard has not done wonders for my Java development.
Here's a summary of my troubles:

- After upgrading, mysql didn't want to run. Found a solution for it
as some nice bloggers had similar trouble. Did not have to upgrade
mysql (well I cannot upgrade to latest version as there is no build
for it from mysql for Leopard).

- The upgrade made it so I had to reconfigure apache again with php5
and my setup for where I have my web stuff.

- Eclipse 3.3 started to bomb when using goto resource. Found that I
had to upgrade to 3.4 M3 (a port to 3.3 is probably in the works). In
3.4 code complete does not work. Installed Netbeans 6 beta 1 and it
works nicely (I miss a quick view of methods/variables for jump -
similar to eclipse meta-o - probably just newbie me that haven't found
it)

- GWT stopped working. This is fixed in a build with version 1.4.61
announced in a issue for GWT shell mode not working on leopard.

- phpeclipse isn't full compatible with eclipse 3.4 - ditto for
subclipse. It works though even some errors occure.

Besides that Leopard does look good, but I'd hold off installing it
until the projects get around announcing that they work fully on
Leopard.

Knubo

Rick

unread,
Nov 11, 2007, 6:42:28 PM11/11/07
to The Java Posse
My sincere apologies on the GWT thing.
I spotted that one a couple of months ago, but couldn't figure out how
to report it without breaking the beta NDA.
Good to know that it is fixed.
Message has been deleted

David Watson

unread,
Nov 14, 2007, 10:12:52 AM11/14/07
to The Java Posse
The main thing that I've found that's very annoying (but I've found an
equally annoying workaround for) is that
Thread.getContextClassloader() doesn't work the same it does on other
JVMs, including Tiger's and Sun's Linux JVM. My code doesn't use the
context classloader, but RMI and Hibernate both do - and instead of
defaulting to the system classloader, on Leopard it returns null.

Anybody else seeing this, or if there's any known way of fixing/
working around this, without having to put
Thread.currentThread().setContextClassLoader(ClassLoader.getSystemClassloader())
in all my mains?

I reported it to Apple, but my bug report on radar.apple.com still is
just listed as open, with no more information.

Brice

unread,
Nov 14, 2007, 4:57:31 PM11/14/07
to The Java Posse
I ran:

System.out.println(Thread.currentThread().getContextClassLoader() ==
null);

and got "false".

I did this from a scrapbook page in Eclipse (exec arbitrary Java code)
- so not sure if Eclipse is hiding something. On the other hand, I am
able to start my Hibernate 3.x app in JBoss 4.2.1 successfully on
Leopard ... not sure if that would be exercising this (you mentioned
Hibernate).

Cheers,
Brice

David Watson

unread,
Nov 14, 2007, 10:02:30 PM11/14/07
to The Java Posse
Now that's really strange. When I do that, I get "true".

This isn't just on one machine, either - it happens on my Macbook Pro
and my Mac Pro.

Hmm.... looking a bit more closely, it appears that it only happens
when java is launched with -XstartOnFirstThread (needed for SWT apps).
I have my java aliased as 'java -XstartOnFirstThread'.

Unfortunately, everything I do for work uses SWT, so this still is
annoyingly broken.

Brice

unread,
Nov 15, 2007, 12:00:36 PM11/15/07
to The Java Posse
Yeah, something changed w/ -XstartOnFirstThread - this caused a
problem w/ GWT and is why a new version of 1.4 (1.4.61) is needed to
run on Leopard. I would suggest only using it when you need to. I
don't have that alias and Eclipse still runs fine (obviously a GWT
app). However - my "new" GWT hosted mode UI does still require it ...
I'm guessing that it is still needed, but needs to be handled
differently.

Good luck!

-Brice

David Watson

unread,
Nov 15, 2007, 6:01:46 PM11/15/07
to The Java Posse
Turns out that it also breaks exceptions that get thrown all the way
out of your main method, so they're silently ignored. So this simple
program appears to finish successfully, if run with -
XstartOnFirstThread:

public class Foo {
public static void main(String[] args) {
throw new RuntimeException("Something broke");

Tor Norbye

unread,
Nov 16, 2007, 7:39:18 PM11/16/07
to The Java Posse
On Nov 9, 9:12 am, Knubo <knu...@gmail.com> wrote:
> - Eclipse 3.3 started to bomb when using goto resource. Found that I
> had to upgrade to 3.4 M3 (a port to 3.3 is probably in the works). In
> 3.4 code complete does not work. Installed Netbeans 6 beta 1 and it
> works nicely (I miss a quick view of methods/variables for jump -
> similar to eclipse meta-o - probably just newbie me that haven't found
> it)

Command-F12 (in the menus, Navigate > Inspect Members). P.S. beta1 is
really ancient - beta2 has been out a long time and RC1 was just
released - and the performance of Inspect Members was improved a bit
over beta1.

-- Tor

Knubo

unread,
Nov 17, 2007, 8:58:51 AM11/17/07
to The Java Posse
On Nov 17, 1:39 am, Tor Norbye <tor.nor...@gmail.com> wrote:

> Command-F12 (in the menus, Navigate > Inspect Members). P.S. beta1 is
> really ancient - beta2 has been out a long time and RC1 was just
> released - and the performance of Inspect Members was improved a bit
> over beta1.

Thanks! I was missing that one. I'll go grab RC1 and try it out.

Knubo

Michael Kölling

unread,
Nov 16, 2007, 11:53:59 AM11/16/07
to The Java Posse
I've had a couple of other problems that I haven't seen reported
anywhere - can we really be the only ones hit by this?

First, we use buttons is a toolbar with the "toolbar" style
decoration, using Apple's JButton.buttonType property:

button.putClientProperty("JButton.buttonType", "toolbar");

Until Tiger, this gives you a button with a rectangular (not rounded)
look. In Leopard, suddenly these buttons look nothing like buttons at
all. They have absolutely no decorations, and they show no click
feedback (no visual 'pressed down' indication). They look and feel
just like labels. They still work as buttons when clicked, though.
Looks absolutely appalling.

I cannot for the life of me understand why someone thought having a
button style with absolutely no decorations is a good thing.

Secondly, when running an application that does a lot of painting with
alpha channels, my application crawls to a halt. The Java heap neatly
stays within it 64Mb, but if I look at the application's memory in the
Activity Monitor, the application's resident memory consistently
grows, eventually hitting 1.5 Gb, where it runs into the limits of my
hardware, and my whole system (all processes!) as good as freezes.

Running the same application on Tiger, the memory stays constant at
about 100Mb.

When we enable Quartz Extreme in Leopard, everything goes back to
normal...

Annoying.

Michael

Dick Wall

unread,
Nov 17, 2007, 3:56:51 PM11/17/07
to The Java Posse
My apologies to Michael - this response was sitting in the moderation
queue and I didn't see it until this morning.

Cheers

Dick

andrew.bruce.law

unread,
Nov 18, 2007, 10:06:35 AM11/18/07
to The Java Posse
<minor gripe>
Man, what would be dead cool would be if you could point your latest
NB at the old one and tell it to "just get all the plugins I've down
loaded already". Doing it manually each time a new release comes out
is such a pain.
</minor gripe>

:-(

Andrew
Reply all
Reply to author
Forward
0 new messages