tycho

Building Eclipse Plug-ins and RCP Applications with Tycho

Session Type: 
Tutorial [3 hours]
Speakers

Tycho is a Maven extension for building Eclipse artifacts: Eclipse plug-ins/OSGi bundles, features, products/RCP applications, and p2 repositories.

Schedule info

Time slot: 
25 March 09:00 - 12:00
Status: 
Accepted

Audience

Track: 
Tools
Experience level: 
Beginner

Automating the consumption of Eclipse for internal use

Session Type: 
Standard [35 minutes]
Speakers

Supporting a large user base implies catering to a lot of different needs.

In Ericsson's case this means building over 20 different eclipse distributions and creating a corporate wide p2 repository to make it easy for our users to get all the plugins they need.
To achieve the necessary customization of each eclipse distro with a high degree of automation, a wide variety of technologies has been used: product files, jenkins, tycho, jbehave, p2 tools, etc.

In this talk, we give an overview of our semi-automated workflow, where each technology fits and give you our tips and tricks.

Schedule info

Time slot: 
28 March 13:30 - 14:05
Status: 
Accepted

Audience

Track: 
Tools
Experience level: 
Intermediate

Simulate This! - The Eclipse Platform as an Integrated Computational Environment

Session Type: 
Standard [35 minutes]
Speakers

Solving 21st century science problems often requires extremely large simulations of multiple areas of physics, chemistry and applied mathematics on supercomputers. These supercomputers can perform over 10^15 floating point operations per second and a single simulation can produce anywhere from a few to hundreds or even a couple of thousand terabytes of data. Both the machines and the simulations require significant "care and feeding" to produce quality results which can be a very challenging endeavour for both the initiated and the uninitiated. Most of the work to run these simulations is done as it has always been done for decades: by working the shell!

We will present an open-source, Eclipse-based "integrated computational environment" that helps users setup and run simulations on these machines and analyze their data data using the platform that we all know and love, in a seamless, intuitive way. We will discuss why the Eclipse Platform was chosen for this task and why it represents a revolutionary step in usability and productivity in the computational science community. We will share issues and challenges that we have faced with both the Rich Client (desktop) and Rich AJAX Platforms (web), tricks of the trade for building with Eclipse Tycho and the Eclipse Resources Plug-in and the component architecture of our OSGi bundles. We will also discuss the third party libraries that we have integrated for 3D graphics, data management, analysis and post-processing, including jMonkeyEngine, VisIt, HDF5 and Derby (via Eclipse Gemini). We will present the development environment, which is also Eclipsed-based, that is used by the developers for UML modeling, version control, code authoring and testing. Finally, sample simulations will be shared with the audience to demonstrate how the system works and the types of problem solving it enables for batteries, computational fluid dynamics, nuclear energy and quantum computing.

Schedule info

Time slot: 
27 March 17:00 - 18:00
Room: 
Federal
Status: 
Accepted

Audience

Track: 
Eclipse 4
Experience level: 
Intermediate
Slides: 

From Custom Maven Builds to Tycho

Session Type: 
Standard [35 minutes]
Speakers

For many years Eclipse and Maven integration has been something existing at the periphery; technically working but not providing the type of support really need to do Eclipse PDE builds using an automated build system like Maven.

Enter Tycho. This set of Maven plugins has allowed our organization to move from using a set of custom developed maven plugins to using industry standards. Where before the focus was on using Maven to use POM descriptors for generating Eclipse PDE artifacts, now the focus can be in defining the PDE artifacts to drive the Maven build.

Schedule info

Time slot: 
27 March 10:30 - 11:05
Room: 
Back Bay
Status: 
Accepted

Audience

Track: 
ALM Connect
Experience level: 
Intermediate

Bundle Building

Session Type: 
Standard [35 minutes]
Speakers

Building bundles is at the heart of OSGi development. What approaches and tools are available? What's different about building bundles compared to regular Jars? What are the trade-offs of manifest-first and the alternatives? We'll cover a simple project built using Maven/Tycho, Ant/Ivy/Bundlor, and Gradle/BnD, to help you compare and choose what's right for your project. We'll also have a look at what's new like the p2 resolver in the latest Ivy release. I won't be focusing on anything specific to plug-in development or the Eclipse IDE.

Schedule info

Time slot: 
27 March 13:30 - 14:05
Room: 
Beacon Hill 1
Status: 
Accepted

Audience

Track: 
OSGi DevCon
Experience level: 
Beginner

Real World: Tycho

Session Type: 
Standard [35 minutes]
Speakers

There are some differences when you use Tycho as part of a Corporate product. Not everything resides nicely into the Maven or Eclipse world. You have to deal with remote developers, dependencies that are not already OSGI bundles, and incomplete or non-existent OSGI bundle information from maven central.

This talk will discuss some of these challenges, and the various open source tools available to address these challenges. Topics will discuss:

* Managing and Releasing P2 repositories.
* Creating OSGI source bundles from maven central.

Schedule info

Time slot: 
26 March 17:00 - 18:00
Status: 
Accepted

Audience

Track: 
ALM Connect
Experience level: 
Intermediate
Slides: 

Tags:

A tale about a Big SVN to Git Migration

Session Type: 
Standard [35 minutes]
Speakers

In November 2012 I helped the giant JBoss Tools repo containing 400+ eclipse plugins, 2+ millions line of code with 7+ year of history migrate from SVN into a multitude of Git repositories.

Most existing large migrations I could find info about was about the size as one of our 30+ modules in JBoss tools and it turned out the advice in most of these just did not cope with a migration as large as this.

During this tale I cover what tools I examined, rejected and in the end selected to do the migration. I will outline the migration process we did as a team, what things Git enabled immediately and which things we are moving towards now that Git have opened up for a more flexible build and development model and structure.

Schedule info

Time slot: 
27 March 16:15 - 16:50
Room: 
Back Bay
Status: 
Accepted

Audience

Track: 
ALM Connect
Experience level: 
Intermediate

One test to @Rule them all

Session Type: 
Standard [35 minutes]
Speakers

One abstraction layer, forty implementations and one test? Have you
ever build a pluggable API which allows others to extend your product?
We did this with the Mylyn Tasks framework and while the framework
provides common UI for accessing tasks, anyone can plug in specific
connectors to access their change management system of choice.
Connector authors are responsible for fulfilling the expectations of
the Mylyn API which isn't always documented in every little detail and
test their implementation for a number of edge cases. We'll show you
how we simplified testing of connectors and improved test coverage
significantly by introducing an integration test infrastructure on the
API level that tests all implementations with an elaborate test suite
for common behavior and also covers exceptional circumstances.

Schedule info

Status: 
Declined

Audience

Track: 
Cool Stuff (Other)
Experience level: 
Intermediate

Binary Artifact Exchange for Tycho Projects Made Easy

Session Type: 
Standard [35 minutes]
Speakers

In Maven, referencing binary artifacts of other projects has always been easy: A Maven repository hosted by a Maven repository manager (like Nexus OSS) acts as central hub for exchanging both released and non-released (“snapshot”) artifacts. To make its artifacts available to others, a project simply deploys to the repository manager using built-in Maven functionality. Other projects then can reference the deployed artifacts by configuring the central hub as remote repository.

Schedule info

Status: 
Declined

Audience

Track: 
ALM Connect
Experience level: 
Advanced

Truly automated builds for the Eclipse Ecosystem. Finally!

Session Type: 
Standard [35 minutes]
Speakers

You are probably familiar with the automated build and dependency management of Maven, Gradle or similar fancy tools?
You just define a project descriptor, add a bunch of dependencies and everything happens "automagically"...
Piece of cake huh?!

Well, there are, however, these RCP "unfortunates" for whom it is not quite that easy… Why's that, you might think?

Schedule info

Status: 
Declined

Audience

Track: 
Tools
Experience level: 
Intermediate

Copyright © 2013 The Eclipse Foundation. All Rights Reserved.