Google Summer of Code Application
see Student Info
The OSGi standard is undergoing its rebirth. Being thrown in the attic for some years it is now a hot topic all over, following its adoption in Websphere and future Spring support. There's a joke amongst the developers saying, that OSGi is a Phoenix implemented by Phoelix.
Maven, on its way to become a de facto build and project management tool, tries to improve the development process not only on conceptual level, but also in each practical aspect. Thus, it has to respond to the growth of the OSGi community by providing efficient solution to build/manage OSGi bundles.
Work to be done
As far as I can gauge, the project involves two parts
creation of a Maven plugin to build OSGi bundles (jar files having special header clauses in their META-INF/MANIFEST.MF). An existing solution from the Felix project might be used as a base
- integration of the OSGi specifics inside the Maven compile process. Roughly said, OSGi bundles are allowed to reference only a "declared" part of the classpath when compiling, and Maven has to perform sanity checks for undeclared class usage.
- version of maven eclipse compiler that integrates with the delivered maven-osgi-plugin
- tutorial, explaining how Maven and OSGi work together
- plugin documentation for maven-osgi-plugin
- javadoc accompanying the produced code
- I hope the deadlines are not too ambitious. My wish is to finish a working version of the Maven + OSGi integration as early as possible and have several weeks at the end of the summer for feedback (from the mentor and the community).
Familiarize myself with the project and community specifics
Initial version of maven-osgi-plugin
Initial version of eclipse compiler integration
stabilization of the code and documentation
deadline defined in GSOC terms
- Student in University Of Sofia, major "Software technologies". Working full-time as a Java Developer, with more than 3 years of commercial experience. My Maven powers are (sadly) limited to Maven1. I've no hands-on experience with M2, except for the usual home-tweaking.
hates coffee, eats 2 bananas for breakfast, drives "Bicycle"