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 – 1:00 pm – 1:30 pm
     Tycho Overview


 Part 2: Hands-on Tutorial – 1:30 pm – 4:00 pm
     Building an e4 RCP application with Tycho




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




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   26.03.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   26.03.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   26.03.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   26.03.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   26.03.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.14.1 is available from Maven central



Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   26.03.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 ...
     ~45 threads/month on tycho-users

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




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   26.03.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




Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0   26.03.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   26.03.2012
Related Sessions
 Maven/Tycho
     Tycho - still good, bad or ugly ?
     Get ready to fight your technical debt, with Tycho, Sonar, and Jacoco
     M2Eclipse: The collaboration of the Maven & Eclipse Platforms
 p2
     A gentle introduction to p2
     Provisioning & Migration with p2: Case study - The Good, the Bad and the
      Ugly
 ALM
     Best practices for using Hudson as part of your Agile strategy
     How I Learned to Stop Worrying and Love the Build
 e4
     (in parallel) Creating Rich Clients with Eclipse RCP 4.x
     The Eclipse 4 Application Platform explained

Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0                 26.03.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   26.03.2012

More Related Content

What's hot (20)

PPTX
Discovering the p2 API
Pascal Rapicault
 
PPT
Understanding and extending p2 for fun and profit
Pascal Rapicault
 
PDF
Continuous Integration
Danilo Pianini
 
PDF
2015 11-04 HEADS at EclipseCon: Modelling Things for IoT
UdoHafermann
 
PPT
Managing Your Runtime With P2
Pascal Rapicault
 
PPT
p2, modular provisioning for OSGi
Pascal Rapicault
 
PDF
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Embarcadero Technologies
 
PDF
PuppetConf 2016 Moving from Exec to Types and Provides
Martin Alfke
 
PDF
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Martin Alfke
 
PPT
469-Porting the build system of a commercial RCP Application from Europa to G...
gustavoeliano
 
PDF
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Embarcadero Technologies
 
PDF
EEF : Sexy Properties, Wizards and Views - EclipseCon 11
Chauvin Mariot
 
PDF
Streaming in grails
Sandeep Sankaye
 
PDF
Linux GUI Applications on Windows Subsystem for Linux
Embarcadero Technologies
 
PPT
Eclipse Training - RCP & Industrialization
Luca D'Onofrio
 
PDF
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Embarcadero Technologies
 
PDF
Software development made serious
Danilo Pianini
 
PPTX
OSGi Versioning And Testing
pvanderlei
 
ODP
Unit Test Android Without Going Bald
David Carver
 
PDF
FMXLinux Introduction - Delphi's FireMonkey for Linux
Embarcadero Technologies
 
Discovering the p2 API
Pascal Rapicault
 
Understanding and extending p2 for fun and profit
Pascal Rapicault
 
Continuous Integration
Danilo Pianini
 
2015 11-04 HEADS at EclipseCon: Modelling Things for IoT
UdoHafermann
 
Managing Your Runtime With P2
Pascal Rapicault
 
p2, modular provisioning for OSGi
Pascal Rapicault
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Embarcadero Technologies
 
PuppetConf 2016 Moving from Exec to Types and Provides
Martin Alfke
 
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Martin Alfke
 
469-Porting the build system of a commercial RCP Application from Europa to G...
gustavoeliano
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Embarcadero Technologies
 
EEF : Sexy Properties, Wizards and Views - EclipseCon 11
Chauvin Mariot
 
Streaming in grails
Sandeep Sankaye
 
Linux GUI Applications on Windows Subsystem for Linux
Embarcadero Technologies
 
Eclipse Training - RCP & Industrialization
Luca D'Onofrio
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Embarcadero Technologies
 
Software development made serious
Danilo Pianini
 
OSGi Versioning And Testing
pvanderlei
 
Unit Test Android Without Going Bald
David Carver
 
FMXLinux Introduction - Delphi's FireMonkey for Linux
Embarcadero Technologies
 

Similar to Tycho Tutorial (EclipseCon 2012) (20)

PPTX
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
jsievers
 
PPT
Sleep Peacefully as Maven Tycho Builds your Product
Subramanyam C
 
PPT
Automating the consumption of Eclipse for internal use
Pascal Rapicault
 
PPTX
PDE builds or Maven
Eclipse Day India
 
PDF
Eclipse IDE, 2019.09, Java Development
Pei-Hsuan Hsieh
 
PPTX
CollabSphere 2021 - DEV114 - The Nuts and Bolts of CI/CD With a Large XPages ...
Jesse Gallagher
 
PPT
"Eclipse Application Development" at GNUnify 07
KetanPadegaonkar
 
PPT
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Tonny Madsen
 
PPT
Leveraging the Eclipse Ecosystem for the Scientific Community
guestd41014
 
PPT
The Build System of Commercial RCP Application A Case Study
gustavoeliano
 
PPT
Eclipse 2011 Hot Topics
Lars Vogel
 
PDF
A journey with Target Platforms
Mickael Istria
 
PDF
Beyond Domino Designer
Paul Withers
 
PDF
Overview of Eclipse technologies
PT.JUG
 
PDF
P2 Introduction
irbull
 
PDF
Tuscany : Applying OSGi After The Fact
Luciano Resende
 
PDF
Runtime surgery
tobias_jenkner
 
PDF
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
PDF
Creating Large Scale Software Platforms with OSGi and an Extension Point Mode...
Nuxeo
 
PDF
Adopting the Maven Nature in Papyrus Source Projects
cdamus
 
Building Eclipse Plugins and RCP Applications with Tycho - ECE 2012
jsievers
 
Sleep Peacefully as Maven Tycho Builds your Product
Subramanyam C
 
Automating the consumption of Eclipse for internal use
Pascal Rapicault
 
PDE builds or Maven
Eclipse Day India
 
Eclipse IDE, 2019.09, Java Development
Pei-Hsuan Hsieh
 
CollabSphere 2021 - DEV114 - The Nuts and Bolts of CI/CD With a Large XPages ...
Jesse Gallagher
 
"Eclipse Application Development" at GNUnify 07
KetanPadegaonkar
 
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Tonny Madsen
 
Leveraging the Eclipse Ecosystem for the Scientific Community
guestd41014
 
The Build System of Commercial RCP Application A Case Study
gustavoeliano
 
Eclipse 2011 Hot Topics
Lars Vogel
 
A journey with Target Platforms
Mickael Istria
 
Beyond Domino Designer
Paul Withers
 
Overview of Eclipse technologies
PT.JUG
 
P2 Introduction
irbull
 
Tuscany : Applying OSGi After The Fact
Luciano Resende
 
Runtime surgery
tobias_jenkner
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
Creating Large Scale Software Platforms with OSGi and an Extension Point Mode...
Nuxeo
 
Adopting the Maven Nature in Papyrus Source Projects
cdamus
 
Ad

Recently uploaded (20)

PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Ad

Tycho Tutorial (EclipseCon 2012)

  • 1. BUILDING ECLIPSE PLUG-INS AND RCP APPLICATIONS WITH TYCHO Jan Sievers & Tobias Oberlies , SAP AG
  • 2. Tutorial Outline  Part 1: Introduction – 1:00 pm – 1:30 pm  Tycho Overview  Part 2: Hands-on Tutorial – 1:30 pm – 4:00 pm  Building an e4 RCP application with Tycho Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 3. Part 1: Introduction Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.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 26.03.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 26.03.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 26.03.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 26.03.2012
  • 8. 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.14.1 is available from Maven central Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 9. 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 ...  ~45 threads/month on tycho-users Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 10. Part 2: Hands-on Tutorial Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 11. 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 Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 12. 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 26.03.2012
  • 13. Related Sessions  Maven/Tycho  Tycho - still good, bad or ugly ?  Get ready to fight your technical debt, with Tycho, Sonar, and Jacoco  M2Eclipse: The collaboration of the Maven & Eclipse Platforms  p2  A gentle introduction to p2  Provisioning & Migration with p2: Case study - The Good, the Bad and the Ugly  ALM  Best practices for using Hudson as part of your Agile strategy  How I Learned to Stop Worrying and Love the Build  e4  (in parallel) Creating Rich Clients with Eclipse RCP 4.x  The Eclipse 4 Application Platform explained Copyright (c) 2012 SAP AG and others. Licensed under EPL v1.0 26.03.2012
  • 14. 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 26.03.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
  • #9: Tycho is the first Maven plug-in at Eclipse
  • #10: 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)