vogella GmbH is looking for interested students to work in the Eclipse Open Source project

So much to do in the Eclipse platform project. We are looking for students enthusiastic about Eclipse to help us improve it.

See Student – Eclipse Open Source development. Contact hr@vogella.com in case you are interested.

Posted in Eclipse, Lars Vogel | Leave a comment

Defining JDT code templates via the org.eclipse.ui.editors.templates extension point

I recently had again the need to define new Java code templates via a plug-in so that they can be easily shared among a group of developer. I finally took the time to document it, seeAdding code templates to the Eclipse IDE via plug-ins for a short summary of it.

Posted in Eclipse, Lars Vogel | 1 Comment

Make Ubuntu to show all open Windows if you use Alt-Tab

By default Ubuntu only show the windows on the same desktop if you use Alt-Tab. To see the windows on all virtual desktops you have to use Ctrl+Alt+Tab.

This drives me crazy. To change this:

sudo apt-get install compizconfig-settings-manager

ccms

and change the highlighted entries.

ubuntu-virtualdesktop

 

Posted in Lars Vogel | Tagged | Leave a comment

Ignore whitespace changes in Eclipse Git blame

I recently learned that Eclipse GIt can ignore whitespaces changes in its blame annotations.  To enable blame annotation in Eclipse click on your editor border and select “Show Annotations”.
gitblameannotations
To ignore whitespae changes this select Preferences > Team > Git, Ignore whitespace changes. Thanks to Robin Stocker for the tip.
Posted in Eclipse, Lars Vogel | Tagged , | Leave a comment

Migration to JUnit 4

When you’re facing the issue to migrate your JUnit 3 tests to JUnit 4, it can be very annoying, because of course you all have a lot of tests. ;)

In general it is a mindless task to migrate things that have been changed due to a new major release.

For JUnit 4 one of the most popular features, which are new compared to JUnit 3, is the usage of Annotations and Pojos for test classes.

So what has to be done in order to migrate a TestCase:

  1. Remove the inheritance from TestCase
  2. Add static imports for org.junit.Assert methods, as these are not available from inheritance any more
  3. Make setUp() method public and add @Before annotation
  4. Make tearDown() method public and add @After annotation
  5. Add the @Test annotation to your test methods

Quite a lot of work, if you have to do it manually, isn’t it?

In order to automate this “mindless task” a bit, I started to write a migration plugin, which is available on GitHub[1] and also as p2 updatesite on bintray.com[2].

After you have installed this plugin you can trigger the follwing action on every Java project, java package or java class in the package explorer by selecting Soure > Convert to Junit 4.

Convert_to_JUnit4

As one of our aims at the vogella company is keeping the Eclipse code clean and modern the migration of the Eclipse tests to JUnit 4 is currently in progress.

 

[1] https://github.com/SimonScholz/codemodify – Github repo with Sources

[2] http://dl.bintray.com/vogellacompany/junit-4-tools/ – P2 updatesite to directly install it

Posted in Eclipse, Java, Simon Scholz | Tagged , , , | Leave a comment

Accessing the caller information of a method in Java code

Sometimes it is nice to access the caller of a method. Doing this is relatively simple, you can use the getStackTrace() method on the current thread. This returns the call stack in reverse order, e.g. the first element is the own call, the second element the direct caller and so on.

The following example demonstrate how to print out a maximum of 4 callers in the current stack trace:


public void aMethod(){
StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
for (int i = 1; i < stackTraceElements.length && i<=4; i++) {
StackTraceElement stackTraceElement = stackTraceElements[i];
System.out.println(stackTraceElement.getClassName() + " Method "
+ stackTraceElement.getMethodName()); //$NON-NLS-1$

}
}

Posted in Java | Tagged | 3 Comments

Automatic error reporting for the Eclipse IDE

Our friends from codetrails have developed an awesome tool to automatically report any error in the Eclipse IDE to the relevant Eclipse project.

If you want to improve our IDE experience in the future I highly recommend installing this tool and activating it.

This is the p2 update site to install it: http://download.eclipse.org/recommenders/updates/milestones/

stacktracesinstall10

Your find a very good user guide under the following URL: Stacktraces and Error Reporting Tool.

Afterwards Eclipse committer will automatically receive error messages (after user confirmation) and can work on the issues which currently annoys you without you spending any time on it. Here is a screenshot of the dashboard for Eclipse committers I extracted from the user documentation guide.

dash

Posted in Eclipse, Lars Vogel | 2 Comments

vogella GmbH strengthens their Eclipse platform and IDE development commitment

It is amazing how many quality contributions we received over the last months in the Eclipse platform project. For example 50 different people contributed source code to the Eclipse platform.ui project in the last 6 months.

I’m proud to say that we at vogella GmbH are also very active in the platform team. Simon and myself are trying the help as much as possible. Here is screenshot of the Platform.ui project homepage. vogella GmbH is currently not listed as organization here, as we currently prefer to contribute development resources instead of money to the Eclipse project.

platformcontributions

We have certain areas which we find important and plan to work on.

Reduce technical depts:

1.) Clean-up Eclipse platform code to make it more accessible to new contributors
2.) Migrate the Eclipse platform.ui test suites to Junit 4
3.) Integrate the tests suites into the Gerrit build for new contributions
4.) Retire outdated coding

While these activities do not provide direct user value, we think on the long run they will pay out very highly for the end user.

Review as much contributions as possible and coach potential new committers:

We try to review as much as incoming Gerrit reviews as possible. We also try to coach new contributors to become eventually new committers.

Improve usability:

We have the advantage of developing Eclipse plug-ins and RCP applications with our customers and delivering on a regular basis Eclipse Plug-in and RCP training and workshop sessions. During these activities we frequently see inconsistencies and usability issues in the Eclipse IDE.

We plan to work on these. This also means for us to contribute to PDE, JDT, m2e and other components of the platform.

Improve interactive performance:

Together with our virtual friends from Google and IBM we work on improving the interactive performance of the Eclipse IDE. I blog about this in a later post.

Improve Eclipse 4 programming support in the Eclipse IDE:

This mainly improves migration existing components to the Eclipse 4 programming model so that other projects can easier use the Eclipse 4 programming model.

We very much enjoy working on the Eclipse platform and we start to see more and more contributions.

Good times ahead for the Eclipse IDE.

Posted in Eclipse, Lars Vogel | Tagged , , | 3 Comments

Eclipse 4.5 (Mars) requires Java 7

FYI: Our Eclipse 4.5 (Mars) release requires Java 7. I think these are great news. See Eclipse PMC wiki for details.

Posted in Eclipse, Lars Vogel | Tagged | 4 Comments

Final evaluation of JFace project on Google Summer of Code 2014

Hi everyone,

It has been a while since my last post entry. We had a lot of work to do to move our project to an acceptable state. In this post, I would like to give you an overview of the project and introduce you to the new changes.
Continue reading

Posted in Eclipse, Jeanderson Candido | Tagged , , | Comments Off