eclipse.org went with a mountain peaks as the website theme for the release of Photon. Fun and fitting. The Eclipse site prompted me about the cookie use policy. Another change since last year, but not unexpected.
I like to download and install a fresh Eclipse so I don’t have random plugins I’ve tried throughout the year. I downloaded the installer first which is a nice small, well relatively small, (55MB) file. I choose “Eclipse IDE for Java EE Developers” and an installation folder. This took a few minutes. I saw messages go by about it being slower than usual to download Eclipse plugins from various servers. Presumably because Photon has only been out a few days and lots of people are downloading.
I got a prompt from Oomph to accept /plugins/org.eclipse.rse.ui_3.3… as unsigned content. I accepted, but was a little surprised.
Then I was able to open Eclipse
Installing the plugins
Already installed were:
- m2e (maven)
- BuildShip (gradle)
- EclEmma (code coverage)
- JUnit (3, 4 and 5)
- eGit (git)
The significant plugins I chose to re-install are listed in this table.
|Eclipse Tomcat Plugin||One click launch for recent versions of Tomcat. (This is the successor to Sysdeo and Mongrel)
I got a PKIX error. But clicking through it still allowed me to install so I didn’t have to update the certs or anything.
This is a known issue. In my case, it was caused by the eclipse.ini automatically picking up my Java 11 early access install. After changing it to point to Java 8, things went better. This allowed it to pick up the cryptography jars and work as expected.
|SonarLint||I reply heavily on SonarLint. It gives you static analysis findings in Eclipse. I also included the SonarLint Java Configuration Helper so it can see the version of Java I am using. (I”m on Java 8 right now so this is redundant at the moment. But I’m ready for when Java 9 comes out.)|
|Subclipse||I trouble with Subversive in Eclipse Oxygen so I switched to Subclipse. I would have needed to switch this year regardless as Subversive is no longer supported.|
|Eclipse Memory Analyzer||For finding memory leaks.|
|Freemarker IDE||Freemarker syntax highlighting and macro assistance. Unlike with Eclipse Oxygen, this worked on the first install attempt.|
|Contrast||To spot potential security issues. See my impressions of the Contrast plugin.|
|Bytecode Outline||I’ve been looking at bytecode a good fit for the book to make sure I understand why things are happening. This plugin makes it easy. The version number has hex towards the end; maybe the number from github?|
|Pitclipse||For mutation testing coverage|
What excites me
- When searching using open resource/type, exact matches take precedence (vs files you looked at with similar name.) Also, it now shows the path in the workspace regardless of whether the filename is a duplicate. Both are nice usability improvements.
- The UI changed for the debugger. I like that you can see more variables in the debugger view without having to scroll or resize the window.
- There’s now a workspace option to “Sort library entries alphabetically in Package Explorer”. This makes it easier to find things than the default order (which is the classpath.)
What I didn’t like
- On Mac, the default font changed from Monaco to Menlo so keywords show in bold instead of just color. This was more of a “change is hard” thing. The first day, I didn’t like the new bolding. I wasn’t used to it so the keywords looked different. By the second day, I was used to it and it was just readable as the original. (I know I could have changed my workspace default back to Monaco if I continued to not like it).
Other interesting features
- Eclipse now supports Rust. I haven’t used it, but Rust is supposed to be an up and coming language.
- Eclipse supports Java 10 out of the box. Not that interesting because Java 10 came out in March. But good to know that Eclipse is staying current. I imagine there will be an Eclipse 4.8.1a in September or October for Java 11 support since Java 11 comes out in September. Eclipse did this for JUnit 5 so there is definitely precedent.
- JUnit 5 is included. This doesn’t excite me because I had been using 4.7.1a which also had JUnit 5 support. But if you are upgrading from the release a year ago, it is definitely exciting!