SlideShare a Scribd company logo
BUILDING ECLIPSE PLUG-INS
AND RCP APPLICATIONS
WITH TYCHO
Jan Sievers & Tobias Oberlies , SAP AG
Tutorial Outline
 Part 1: Introduction – 9:00 – 9:30
     Tycho Overview


 Part 2: Hands-on Tutorial – 9:30 – 12:30
     Building an e4 RCP application with Tycho




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Part 1: Introduction




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
What is Tycho?
 A manifest-first way to build...
       Eclipse plug-ins/OSGi bundles
       Features
       p2 Repositories
       RCP Applications
...with Maven




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Tycho and Maven
 Tycho provides a maven build extension and several
  maven build plug-ins
 Maven drives the build process using the project object
  model (pom.xml)
 Tycho can be combined with other Maven plug-ins
     QA tools: FindBugs, Checkstyle, PMD, ...
     Code generators
     ...
 Tycho integrates with Maven
     Follow conventions for build output folder
     Inject OSGi dependencies into Maven dependency model
     Inject source folders and compile class-path
Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Tycho and PDE
 Tycho re-uses PDE metadata files
       OSGi bundle manifest (META-INF/MANIFEST.MF)
       build.properties
       feature.xml
       site.xml/category.xml
       *.product files
       *.target files
 You can continue using PDE UI tools

Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Tycho and p2
 Tycho is a p2 artifact/metadata consumer and
  producer
     Resolves dependencies against p2 repositories
     Produces p2 repositories
 Think of Tycho as a „Maven build frontend
  with a p2 repository backend“




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Tycho and CBI
 Common Build Infrastructure (CBI) is an effort to build
  the eclipse platform with Hudson and Tycho
 Make building eclipse from scratch and on any
  machine easy („mvn clean install“)
     Foster contributions
     Prerequisite for long-term support program
 Eclipse platform build to switch to Tycho soon
 Related talks:
     CBI lessons learned
     OSGi Users‘ Forum tooling workshop on Friday
Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Where is Tycho?
 Tycho is a Technology incubator project at Eclipse
     Sources are at git.eclipse.org
      and mirrored to github
     Documentation: wiki.eclipse.org/Tycho
     Mailing lists: tycho-user, tycho-dev
     Issue tracker: Bugzilla
 Tycho 0.16.0 is available from Maven central



Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Contributors & Users
 Committers
     Igor Fedorenko (Sonatype Inc.), Lead
     Tobias Oberlies (SAP AG)
     Jan Sievers (SAP AG)
 Various contributions
     Contributor guide
 Users
     EGit, m2eclipse, CDT, CBI, JBoss tools, Sigasi ...
     Active mailing list tycho-users
     Tycho questions on stackoverflow.com

Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Part 2: Hands-on Tutorial




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Hands-on Exercises
 Step by step we will set up a Tycho build for an
  e4 RCP application:
       Create a Hello World RCP plugin
       Add unit tests
       Add a feature
       Create a p2 repository
       Build a product
       Use a .target file


Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Hands-On Setup
 Everything you need for the exercises is provided
  on the USB stick we handed out
 The exercise instructions are fully self-contained
 Start with tutorial/README.html




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Related Sessions
 Tycho
     Tycho adoption: Lessons learned, tips and tricks from
      the 1st line of front
     Putting P2 into practice: Releasing independent
      products from a shared code base
     Beware: Testing RCP Applications in Tycho can cause
      Serious Harm to your Brain
     A journey with Target Platforms
 Maven
     m2e, an exercise in mixing oil and water
     Kick your Java EE development a notch with m2e-wtp
Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012
Please give feedback!

   1. Sign In: www.eclipsecon.org


   2. Select Session Evaluate


   3. Vote




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   23.10.2012

More Related Content

Similar to Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012 (20)

PPTX
Tycho Tutorial (EclipseCon 2012)
jsievers
 
PPTX
Building Eclipse Plugins and RCP applications with Tycho
jsievers
 
PPTX
Tycho Tutorial EclipseCon 2013
jsievers
 
PPTX
Building Eclipse Plugins with Tycho
jsievers
 
PDF
Developing Rich Clients with the Eclipse 4 Application Platform
Kai Tödter
 
PDF
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
Niklas Heidloff
 
PPT
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Tonny Madsen
 
PPTX
Eclipse Overview
Lars Vogel
 
PDF
Eclipse 40 Labs- Eclipse Summit Europe 2010
Lars Vogel
 
PPT
"Eclipse Application Development" at GNUnify 07
KetanPadegaonkar
 
PDF
DEEP: a user success story
EOSC-hub project
 
PPTX
Xebia deploy it
Ben Laarhoven
 
PPT
ITU - MDD - Eclipse Plug-ins
Tonny Madsen
 
PPT
Sleep Peacefully as Maven Tycho Builds your Product
Subramanyam C
 
PPT
Eclipse summit-2010
Intland Software GmbH
 
PPT
javagruppen.dk - e4, the next generation Eclipse platform
Tonny Madsen
 
PPT
Native Mobile Application Using Open Source
Axway Appcelerator
 
PPT
OSCON Titanium Tutorial
Kevin Whinnery
 
DOCX
Lab (1) installation of python
MuhammadAbdullah36568
 
ODP
Be serious with sirius your journey from first experimentation to large deplo...
Etienne Juliot
 
Tycho Tutorial (EclipseCon 2012)
jsievers
 
Building Eclipse Plugins and RCP applications with Tycho
jsievers
 
Tycho Tutorial EclipseCon 2013
jsievers
 
Building Eclipse Plugins with Tycho
jsievers
 
Developing Rich Clients with the Eclipse 4 Application Platform
Kai Tödter
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
Niklas Heidloff
 
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Tonny Madsen
 
Eclipse Overview
Lars Vogel
 
Eclipse 40 Labs- Eclipse Summit Europe 2010
Lars Vogel
 
"Eclipse Application Development" at GNUnify 07
KetanPadegaonkar
 
DEEP: a user success story
EOSC-hub project
 
Xebia deploy it
Ben Laarhoven
 
ITU - MDD - Eclipse Plug-ins
Tonny Madsen
 
Sleep Peacefully as Maven Tycho Builds your Product
Subramanyam C
 
Eclipse summit-2010
Intland Software GmbH
 
javagruppen.dk - e4, the next generation Eclipse platform
Tonny Madsen
 
Native Mobile Application Using Open Source
Axway Appcelerator
 
OSCON Titanium Tutorial
Kevin Whinnery
 
Lab (1) installation of python
MuhammadAbdullah36568
 
Be serious with sirius your journey from first experimentation to large deplo...
Etienne Juliot
 

Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012

  • 1. BUILDING ECLIPSE PLUG-INS AND RCP APPLICATIONS WITH TYCHO Jan Sievers & Tobias Oberlies , SAP AG
  • 2. Tutorial Outline  Part 1: Introduction – 9:00 – 9:30  Tycho Overview  Part 2: Hands-on Tutorial – 9:30 – 12:30  Building an e4 RCP application with Tycho Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 3. Part 1: Introduction Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 4. What is Tycho?  A manifest-first way to build...  Eclipse plug-ins/OSGi bundles  Features  p2 Repositories  RCP Applications ...with Maven Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 5. Tycho and Maven  Tycho provides a maven build extension and several maven build plug-ins  Maven drives the build process using the project object model (pom.xml)  Tycho can be combined with other Maven plug-ins  QA tools: FindBugs, Checkstyle, PMD, ...  Code generators  ...  Tycho integrates with Maven  Follow conventions for build output folder  Inject OSGi dependencies into Maven dependency model  Inject source folders and compile class-path Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 6. Tycho and PDE  Tycho re-uses PDE metadata files  OSGi bundle manifest (META-INF/MANIFEST.MF)  build.properties  feature.xml  site.xml/category.xml  *.product files  *.target files  You can continue using PDE UI tools Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 7. Tycho and p2  Tycho is a p2 artifact/metadata consumer and producer  Resolves dependencies against p2 repositories  Produces p2 repositories  Think of Tycho as a „Maven build frontend with a p2 repository backend“ Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 8. Tycho and CBI  Common Build Infrastructure (CBI) is an effort to build the eclipse platform with Hudson and Tycho  Make building eclipse from scratch and on any machine easy („mvn clean install“)  Foster contributions  Prerequisite for long-term support program  Eclipse platform build to switch to Tycho soon  Related talks:  CBI lessons learned  OSGi Users‘ Forum tooling workshop on Friday Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 9. Where is Tycho?  Tycho is a Technology incubator project at Eclipse  Sources are at git.eclipse.org and mirrored to github  Documentation: wiki.eclipse.org/Tycho  Mailing lists: tycho-user, tycho-dev  Issue tracker: Bugzilla  Tycho 0.16.0 is available from Maven central Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 10. Contributors & Users  Committers  Igor Fedorenko (Sonatype Inc.), Lead  Tobias Oberlies (SAP AG)  Jan Sievers (SAP AG)  Various contributions  Contributor guide  Users  EGit, m2eclipse, CDT, CBI, JBoss tools, Sigasi ...  Active mailing list tycho-users  Tycho questions on stackoverflow.com Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 11. Part 2: Hands-on Tutorial Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 12. Hands-on Exercises  Step by step we will set up a Tycho build for an e4 RCP application:  Create a Hello World RCP plugin  Add unit tests  Add a feature  Create a p2 repository  Build a product  Use a .target file Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 13. Hands-On Setup  Everything you need for the exercises is provided on the USB stick we handed out  The exercise instructions are fully self-contained  Start with tutorial/README.html Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 14. Related Sessions  Tycho  Tycho adoption: Lessons learned, tips and tricks from the 1st line of front  Putting P2 into practice: Releasing independent products from a shared code base  Beware: Testing RCP Applications in Tycho can cause Serious Harm to your Brain  A journey with Target Platforms  Maven  m2e, an exercise in mixing oil and water  Kick your Java EE development a notch with m2e-wtp Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012
  • 15. Please give feedback! 1. Sign In: www.eclipsecon.org 2. Select Session Evaluate 3. Vote Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 23.10.2012

Editor's Notes

  • #6: Tycho uses JDT compiler – respects package visibility rules (export package)
  • #7: Limited support: build.properties, *.target files (but no longer different interpretation)Dependencies: OSGi Manifest Only = manifest first; dependencies in POM ignored/special semantics
  • #10: Tycho is the first Maven plug-in at Eclipse
  • #11: Contributors: SAP AG – various; Inventage AG – Beat Strasser; plus a couple of small contributionsRecent = last 6 monthsCDT = Eclipse's C/C++ Development ToolingCommercial adoption: SAP OSGi based tools/servers; JBoss tools (large project -> separate talk)