Migrated highly complex Eclipse platform based product build automation from Ant to Maven-based Tycho.

Some of the problems included:

  • Company’s product highly complex tech stack required migration of its Eclipse platform based product build automation from Ant to Maven-based Tycho
  • Most Eclipse platform based projects were already using Tycho for some time making Company’s build automation outdated and hard to maintain
  • It was not known whether Tycho build automation works with CVS
  • Project structure used in Company’s CVS repository was not compatible with neither Maven-based Tycho nor Maven SCM plugin
  • Some 3rd party dependencies used in Company’s product build were not packaged for use in OSGi container

Some of the solutions applied included:

  • Researching and prototyping to understand how Company’s product build automation can be migrated from Ant to Tycho
  • Developing proof of concept using Maven SCM plugin with CVS provider to check out source from Company’s CVS repository
  • Developing custom Maven plugin Mojo that wraps Maven SCM plugin and allows to check out from CVS repository into Maven-compatible hierarchical directory structure
  • Developing custom Maven plugin Mojo that supports updating bundle and feature version identifiers incrementally
  • Developing specialized POM profiles – for creating P2 repo for Eclipse RAP platform build and building Company’s product using build timestamps as well as custom qualifiers
  • OSGifying any 3rd party depedencies not packaged for use in OSGi container using Maven ‘p2-maven-plugin’ plugin
  • Updating target definition and product definition files to reflect changes applied

Technology stack

  • Java
  • OSGi
  • Maven
  • Tycho
  • Mojo Executor
  • Tycho Versions
  • Maven Download Plugin
  • Maven Replacer Plugin

Industry

IT