Eclipse [dl] is one of the favourite IDEs for Java developers today. Part of the reason is its well designed plugin model, which allows easy writing of plugins, hence many plugins; and also easy installation, using an update manager which just requires a specific kind of website directory with an XML description file.
However, with the multitude of plugins available (e.g. at Eclipse Marketplace), it becomes more difficult to choose which plugins may actually be useful. In this article, I try to list the plugins that I personally have used for a long time and deem useful.
Before we start, note that not all JDKs are compatible with all Eclipse versions:
Update 2010-01: Refreshed on JBoss Tools with the advent of the stable Java EE 5 server.
Update 2021-04: Many plugins are included by default now, and a lot of update sites have changed. JBoss was renamed to WildFly in 2014.
The first thing that I ponder is a better team mechanism
(version control),
listed under Window->
.
As of 2020, Git
is integrated in the form of the
EGit plugin
(before, you had
http://
as update site).
A little bit old school,
Subversion
is still better than
CVS
and can be included with the
Subclipse plugin
[mp],
using https://
as
update site (it used to be
http://
in the 2010s).
Good open source
UML
tools are quite rare, and I am still using the lean
(class diagram and sequence diagram only) plugin
AmaterasUML
[gh],
which has
https://
as update site (unlike in the 2010s, where
download
was required; it also needed
GEF).
If your old cld
or sqd
files will not
load, it is probably the fault of
xstream;
open the file with a text editor and replace
Visibility-1
with Visibility$1
and it should migrate gracefully.
For more full-blown UML solutions, ATL [dl] [mp], PlantUML [dl] [mp] and Umple [dl] [mp] might be contenders that still release in 2020 (in the 2000s it was ArgoUML with ArgoEclipse only, both of which didnt impress me much back then).
Eclipse itself already provides many tools and hints for improving code quality. And you can extend it with many plugins available out there; however most of those code improvement tools are too eager, and provide a million warnings which then usually get ignored.
One simple plugin that I found particularly useful (shameless
plug: a friend of mine wrote it) is
JLayerCheck,
which checks package dependencies and ensures they are upheld.
The update site is
http://
and you need to write one XML file (with the package
dependencies) by hand. The plugin is a kind of
SonarGraph
(previously: SonarJ) for the poor.
Checkstyle [mp], SpotBugs [mp] (previously: FindBugs) and SonarLint [mp] might also be good. I tried Checkstyle and FindBugs last in 2005 and it was not possible to remove warnings that were none (i.e. where I had intended the code to be that way); since I like an empty problem view, I did not keep them back then.
I use
Python
for quick coding on
arrays,
and for using external C++ libraries
[tut],
which is usually a pain with Java
(JNI).
PyDev
[home]
[mp]
is a reasonable Eclipse plugin with
http://
as update site.
It uses a non-common certificate so do not update in the
background (the dialog will not pop up, just fail).
If you are using Java 8, the last working PyDev 8.2.0
(2021-02)
[dl]
can be installed with
http://
as update site.
For debug, set the first breakpoint directly in your main loop;
otherwise, it may fail.
For documentation with math
in it, I used
Latex
for a long time, here in the form of
Texlipse
[ecl]
[gh]
[mp].
Since Texlipse 1.5 apparently you have to use the market place
(before that http://
was the update site of choice).
And Texlipse
2.0.2
(2018-07)
is the last to run with Java 8, with
http://
as update site.
Since I have not developed for JEE in a decade, you should probably ask someone else. Personally, I would go for the open-source app server Glassfish [mp] since it still releases and was ok in 2010. The Apache TomEE (JEE version of Tomcat) with an Eclipse-included plugin also sounds good if you are feeling experimental.
During 2000 to 2010 I used the
JBoss
application server (now forked to
WildFly)
with the
JBoss Tools
plugins for a long time and was reasonably satisfied;
latest in 2010 with
Eclipse
3.5 (Galileo)
[dl]
and update site
http://
(still available but out of date).
Also in the 2000s and on the more basic side when I used Apache Tomcat [home], the Sysdeo Tomcat plugin was a good help; last released in 2014 and still without an update site, this is one curious combination. Today I would probably go for a full application server.
Getting both plugin development (PDE) and C++ development (CDT) into one Eclipse installation was not possible in 2010 and is still difficult in 2020.
Whew, that is a lot of trials just to get a combined Eclipse!
So far, I have only written an installer with IzPack, but no Eclipse support here. For multi-platform, the 2000s Eclipse Delta pack (choose an Eclipse version, then browse way down the page) is apparently not necessary with p2 anymore.
People I know have used the Nullsoft Installer [home] (yes, the WinAmp [home] guys) and the NSIS plugin, but this is Windows only.
Since I have not used a GUI builder outside Android in a decade, this is severely out of date.
In the 2010s
Netbeans
[dl]
was traditionally better than Eclipse with their
Matisse
GUI builder, but the Eclipse
Visual Editor
was trying until 2010 with
http://
as last update site.
In 2020 WindowBuilder [mp] and Jigloo SWT/Swing GUI builder [mp] seem to be somewhat current approaches.
Eclipse is a good IDE for Java developers with a well designed plugin model. If you found a few good plugins through this article, it was a success. Thanks for leaving a part of your attention span here, and have a good day!
EOF (Apr:2021)