eclipse luna

When I went to eclipse.org, I wasn’t greeted the cool Kepler book from last year. I did see “are you ready for Java 8” front and center. The matrix comparing the packages is still clear. I chose the Java EE version. The download page had a warning that “Eclipse requires Mac OS X 10.5 (Leopard) or greater.” No problem. I’m on the latest version. I’m also on the latest version of Java 8.

Initial launch

When launching my workspace, I got the warning:

Warning: Workspace ‘/myWorkspace’ was written with an older version of the product and will be updated. Updating the workspace can make it incompatible with older versions of the product. Are you sure you want to continue with this workspace.

Which is fine. I’m not going backward. And all the important code is in Subversion or Git anyway. The “Failed to load the JNI shared library” error I got with Kepler is fixed. To be fair, it was fixed in Kepler SR 1, but I never upgraded. It’s nice to be able to launch Eclipse through the icon again though.

Installing the plugins

Like last year, I decided to install the plugins I need for Eclipse Marketplace so I can shed the plugins I tried out and don’t actually want. Cleaning plugin house once a year is nice. The biggest plugin I wanted to shed was the old experimental FIRST robotics plugin. It was never intended for Kepler. I installed it last month to write a presentation.

The significant plugins I use are listed in this table. A number of plugins were beta for Luna or I had to use the Kepler version. I don’t remember that problem in previous years.

Plugin Purpose
Mongrel Tomcat integration supporting Tomcat 7.  (The version of Sysdeo I was using seems to have had that too but at least Mongrel looks more active.) It looks like they used the Sysdeo source code and forked it since Sysdeo isn’t getting updates anymore.Last year, I tried Mongrel and fell back to Sysdeo. This year, Mongrel stuck. I’m happy with it.
Ecl Emma Code coverage
PMD and FindBugs Static analysis. For PMD, I had to use the update site. An install “happened” through Eclipse Marketplace, but I didn’t any of the PMD settings I was expecting. Using the update site gave me what I expected
Subversive To access Subversion repositories
Groovy/Grails Tool Suite (didn’t install) Groovy project/editor and console. At this time only the Kepler version is available which conflicts with other plugins I’ve installed. I’ll use the command line (or fall back to Kepler) for the time being
Eclipse Memory Analyzer For finding memory leaks. Last year this was only available via an update site. Now it is in Eclipse Marketplace.
Freemarker IDE Freemarker syntax highlighting and macro assistance.  Note that it is listed under the JBoss Tool Project. You pick that plugin and then unselect everything except “Freemarker IDE”
Python Python plugin/perspective (had to download one for Eclipse 3.6)
Code Recommenders I think this one is new for Luna. It’s supposed to be better than autocomplete. So far it is a nice toy. I do like that it prompts you when you use autocomplete to make it the default, enable subword matches, etc. Making it easy to see what is going on.

I have faster internet (FIOS) since last year so the downloading was faster. However, finding the right plugins took longer this time. And I still find it odd that Git is included and Subversion is not. Licenses I guess.

What excites me

  1. Java 8 support! This blog post shows the quick fixes and the like that are available. They did a really good job. The integration is very intuitive and “just works”
  2. eGit has come a long way. It even supports cherry picking now. I think I’ll still mostly use command line, but it is nice to have a visual option.
  3. Drag and drop to change order of the list of perspectives in the toolbar.

What frustrates me

  1. Nothing. I’m really happy with Luna

eclipse kepler (4.3) on a mac

Getting started

When going to the Eclipse site, I was greeted with a cool book looking page about Kepler.  Who Kepler is, what’s new, the link to download, etc.  kepler-book

Choosing a package

Eclipse has a nice chart comparing the features in each edition.  I’m excited to see git and maven got promoted to the Java EE edition.  In fact the Java EE edition is *almost* a superset of the Java edition now.  The download is 50MB bigger than last time.  And since Verizon wired the basement for FIOS but not any individual apartments yet, this means 30-45 minute download.  Now that I have the file eclipse-jee-kepler-R-macosx-cocoa-x86_64.tar, I can start.

Installing on A Mac was a small adventure

I did the usual of untarring and copying the eclipse folder into Applications.  I got an error: “Eclipse” is damaged and can’t be opened.  You should move it to the Trash.

I found a command here to get Gatekeeper to allow it:  xattr -d com.apple.quarantine /Applications/eclipse/Eclipse.app

Then I got: Failed to load the JNI shared library /Library/java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/bin/../jre/lib/client/libjvm.dylib

I was on Java 7 update 17.  I updated to update 25, but that didn’t help.  I then tried using a launch startup script per the bug report.  Note that I needed to change two bolded lines to point to my install location.

#!/bin/bash
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/bin/java \
-Djava.library.path=<strong>/Applications/eclipse/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.200.v20130521-0416/eclipse_1507.so</strong> \
-Xms512m \
-Xmx2048m \
-Xdock:icon=../Resources/Eclipse.icns \
-XstartOnFirstThread \
-Dorg.eclipse.swt.internal.carbon.smallFonts \
-XX:MaxPermSize=256m \
-jar /Applications/eclipse/plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar \
-os macosx \
-ws cocoa \
-arch x86_64 \
-showsplash \
-name Eclipse \
--launcher.appendVmargs \
-debug

It sounds like this will be fixed in Kepler SR  1.  In the meantime I renamed my script to end in .command so I can open it via the applications finder window (nice tip)

First Impressions

Since some of the plugins I was using are now built in and others I don’t use anymore (that I installed over the past year), I decided not to import my plugins from a previous installation and start anew.  It’s easy enough to install from the marketplace.

The significant plugins I use:

Plugin Purpose
Mongrel Tomcat integration supporting Tomcat 7.  (The version of Sysdeo I was using seems to have had that too but at least Mongrel looks more active.) Used the Sysdeo source code and forked it since Sysdeo isn’t getting updates anymore.
Ecl Emma Code coverage
PMD and FindBugs Static analysis
Subversive To access Subversion repositories
Groovy/Grails Tool Suite Groovy project/editor and console
Eclipse Memory Analyzer For finding memory leaks – must use update site rather than marketplace
Freemarker IDE Freemarker syntax highlighting and macro assistance.  Note that it is listed under the JBoss Tool Project.
Papyrus UML editor – under install new software > kepler > papyrus  (I don’t recommend Papyrus at this time.)
Python Python plugin/perspective

What excites me

  1. Mylyn connector improvements (for code review)
  2. Remove type arguments after content assist – this happened just often enjoy to be annoying
  3. IDE support for JUnit Assumptions

What frustrates me

  1. The mess about Mac support for Kepler.  It’s annoying launching from the command line (or even a command).

eclipse juno (4.2) review

After my little adventure with Java 7, downloading Eclipse and configuring it was a non-event.

Downloading

The download site is smart enough to pick up on the fact that I am on a Mac and default to presenting me with choices of packages/bits for my OS.  I have to choose between Eclipse for JEE developers and Eclipse for Java developers.  The former has web tools and JEE tools.  The later has eGit and Maven.  It sounds easier to install eGit and Maven after so I chose the JEE edition.  It’s a 200MB download so I need to allow half an hour for download.  Time to do something else for a while.

Plugins

My plugin list is similar to what I installed for Eclipse 3.7 (Indigo).  In fact this year, I didn’t install them one at a time. I used the suggestion in last year’s blog comments and did:

  1. import > install > from existing installation
  2. Pointed to old eclipse
  3. Eclipse then gave me a list of what plugins I had installed and asked which I wanted.
  4. Accepted all the licenses and everything got downloaded/installed together.

Very cool! [last year I couldn’t do this because my Eclipse 3.6 was on a different computer]

The significant plugins I use: (I’ve installed a couple others over the past year and migrated those, but I’m not that attached to them.)

Plugin Purpose
Sysdeo Tomcat integration [correction – Sysdeo no longer works in Juno]
Ecl Emma Code coverage
PMD Static analysis
Subversive To access Subversion repositories
Groovy Groovy project/editor and console
m2Eclipse Maven – which I use more to play for downloading jar dependencies than for actually building
Freemarker IDE Freemarker syntax highlighting and macro assistance.

What excites me

  1. Java 7 support in an IDE.
  2. I really like that you can just start typing the method/field name when in quick outline (ctrl/cmd o) and quick hierarchy (ctrl/cmd t) pop-ups.
  3. Detecting resource leaks of Closeable/Autocloseable resources.  This is awesome because it helps with “old code” too. The common IO/JDBC resources now implement the relevant interfaces.  And the warning is smart enough to pick up on these!
  4. The global search bar gives you quick access to almost any Eclipse feature.  So if I type in “SVN”, I can go right to the SVN repositories view.
  5. When you drag a pane from one part of the IDE to the other, there is a green trim showing where it will wind up.

What frustrates me

  1. Detached editors (open in a new window) look really cool, but they feel awkward to use.  The way to open in detached mod is to drag outside the workbench.  Since I’m usually in full screen mode, this means drag to the OS icons at bottom.  Which is fine – I can get used to that.  The help says you can also get it by clicking “detached” in the menu you get when right clicking the part’s tab.  I don’t get anything by right clicking other than the option to close.
  2. This isn’t new, but HTML formatting is still not what I’d expect. Multiple HTML tags format on the same line and then split before the first attribute.  This isn’t new and it isn’t any worse than previous versions of Eclipse.  Which means I’ve gotten used to it on some level.

What I’m neutral on

  1. Very bright/white windowing – it’s fine, but going to take some getting used to.
  2. Code Recommenders – Intelligent code completion.  I think I’m only neutral because I haven’t gotten to try.  The concept looks really cool