Sunday, July 18, 2010

Eclipse Helios - New Apply Patch Features

Eclipse Helios has a few nice new features for applying patches. In this post I would like to point some of the out

Apply Patch using URL

The Apply Patch wizard now accepts URLs. This is great when you a working with open source projects where patches are frequently added as attachment to bug reports. Previousely, I had to download the patch, find it again (which is difficult when all patches are named patch, and therefore end up being downloaded as patch, patch (1), patch (2), ... ), an then apply. Now I just click on "copy link" and it is automagically pasted into the apply-patch box. Nice one!

Apply Patch in Synchronize View

Even nicer is applying patches in synchronize view - the option is, however, hidden:

  • Switch to the synchronized perspective
  • In the synchronize view, click on the arrow next to the synchronize icon (the first one from the left
  • Select synchronize...

Now you can finally partially apply patches! What makes this feature even better is that it also accepts URLs, so it can be directly used with patches attached to bug reports!

And to bring this all together, there is now the

Apply patch in Synchronize view preference

Hidden in the preferences under "Team", you can check "Apply patch in Synchronize view" to always get this behavior. Now this is one of the most useful settings - unfortunately it is off by default.

Saturday, July 17, 2010

Eclipse Helios and Java 1.6u21 deadlocks

I wanted to write a post about the new Eclipse Helios, which was just released to participate in the Helios Blogathon. So, on my personal machine, I installed the newest JDK (1.6u21), the new eclipse, started it up, tried to work with it and after a few seconds.... It just hangs!

But whait - it worked nicely on my work machine, so what's the deal? Did I install the wrong plug-ins? Tried to open up the wrong editor? I had the same problem on my work machine (Windows 7 x64 with the newest Java 64 bit (1.6u21)). On this machine I fixed it using the 32 bit Java version instead (which just happend to be 1.6u20).

After spending several hours with several 32 and 64 bit versions of Eclipse and Java, I found the deadly combination. It is:

  • Windows 7 x64 (may be unrelated to the problem)
  • Java 1.6 u 21
  • Eclipse Helios

The fix? Get an older Java Version - which is not simple - if you try to get an older version of Java, Oracle asks you to register and wants your email address. They don't tell you that there is a public archive of older Java versions. Why should they? You always want the latest version, right? Even if this means your Eclipse Helios session is limited to 5 seconds.

Helios now runs fine on an Jdk 1.5, with a separate JDK 1.6 installed to actually run my apps.

Update: 11 days after my post Slashdot has some more information: Oracles Java Company Change Breaks Eclipse. Also, there is Bug 6969236.