About the Author:

Rüdiger Herrmann

Rüdiger started writing software more than 20 years ago. From the very beginning he focused on a pragmatic approach to writing and delivering software. Currently he is co-leading the Rich Ajax Platform (RAP) Project and as one of the initial committers on the RAP project, Rüdiger was responsible for the development of RWT, the RAP side of SWT (Standard Widget Toolkit). His interests include promoting test driven development and agile methods to deliver clean code that works. (EMail: rherrmann@codeaffine.com)

Posts by Rüdiger Herrmann:

How to manage Git Submodules with JGit

For a larger project with Git you may find yourself wanting to share code among multiple repositories. Whether it is a shared library between projects or perhaps templates and such used among multiple different products. The Git built-in answer to this problem are submodules. They allow putting a clone of another repository as a subdirectory […]

Posted in Common, Eclipse | No Comments »

Using the AutoValue Code Generator in Eclipse

My colleague Moritz of EclipseSource recently came across Google Auto, a collection of Java code generators. AutoValue is one of them and generates Java code for immutable objects. It provides an annotation and an annotation processor to generate Java code for immutable value objects. The current version is labelled RC1 and a 1.0 release is […]

Posted in Common, Eclipse | 3 Comments »

A JUnit Rule to Conditionally Ignore Tests

I always believed that using @Ignore to deactivate tests is a bad idea. Except, maybe as one way to put tests that fail intermittently into quarantine to attend to them later (as Martin Fowler describes it here). This bears the danger that the test suite decays as more and more tests keep getting ignored and […]

Posted in Common | 5 Comments »

An Introduction to the JGit Sources

JGit is a pure Java library implementing the Git version control system. It is an Eclipse project and started out as the Git library for EGit, which provides a Git integration into Eclipse. Meanwhile JGit has further adopters like in Gerrit, GitBlit, GitClient Plugin for Jenkins (work in progress), … Its permissive license, few dependencies […]

Posted in Common, Eclipse | 2 Comments »

Configure Your OSGi Services with Apache Felix File Install

A recent post about Managed Services reminded me of a feature in Apache Felix File Install that I found worth mentioning. While working on a project with Holger, I learned from him that File Install cannot only be used to manage bundles. It also monitors configuration files and updates Managed Services when their respective configuration […]

Posted in Common, Eclipse, OSGi | No Comments »

An Automated OSGi Test Runner

Among my fellow team members I was known for notoriously forgetting to maintain the (JUnit) test suite. I just can’t get this extra step of manually adding a test to a suite into my fingers. Fortunately there are continuous integration servers that collect tests by a naming pattern. If one of the orphan tests I […]

Posted in Common, Eclipse | 2 Comments »

A Simple way to extend SWTBot

SWTBot is an Eclipse project that enables you to write functional tests for SWT and Workbench based applications in Java. It has API to remote control the application under test and matcher to find widgets and examine their state. For each widget there is a corresponding bot class with methods to control the widget. To […]

Posted in Common, Eclipse | No Comments »

How do you test equals and hashCode?

Just recently I had to implement equals() and hashCode() for several classes. With the aid of your favourite IDE, generating these methods is a matter of seconds. Well, if there weren’t the missing tests. As I tend to be obsessive when it comes to tests, I also want to have tests for equals() and hashCode(). […]

Posted in Common | 7 Comments »

How do you import static in Eclipse?

Long story short, I just discovered that Ctrl+Shift+M (Source > Add Import) can not only be used to add missing imports. It can also help with static imports. Executed on a reference to a qualified member (read Class.member), the refactoring will add a static import for the defining class and remove the class-dot expression. For […]

Posted in Eclipse | 4 Comments »

Eclipse Archive Utilities

A little while ago I started a side project to support working with (zip) archive files in the Eclipse IDE. Initially it was more meant to revive my plug-in development knowledge and play around with some technologies like Tycho or SWTBot. But in the end, I though it might be useful enough to share. The […]

Posted in Common, Eclipse | 2 Comments »