SlideShare ist ein Scribd-Unternehmen logo
1 von 16
BUILDING ECLIPSE PLUG-INS
             AND RCP APPLICATIONS
             WITH TYCHO
25.03.2013   Tobias Oberlies & Jan Sievers, SAP AG
Tutorial Outline
 Part 1: Introduction 9:00 am – 9:30 am
     Tycho Overview


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




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




Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
What is Tycho?
 Tycho is a Maven extension for building
  Eclipse artifacts
       Eclipse plug-ins/OSGi bundles
       Features
       p2 repositories
       RCP applications/Eclipse distributions




Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
Related Technologies

  Plug-in
Development
Environment
   (PDE)
                                                                 Maven
                                                Tycho




    Equinox p2

 Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0    25.03.2013
Maven and Tycho

Maven                                                  Tycho

 mvn clean install                                    mvn clean install
 Packaging types for                                  eclipse-plugin,
  standard artifacts                                    eclipse-feature, …
 Tests run in build                                   eclipse-test-plugin
 Customize build with                                 Most Maven plugins
  additional goals                                      also work in Tycho
  (FindBugs, code                                       projects
  generators, …)
Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0           25.03.2013
Maven and Tycho (cont.)

Maven                                                  Tycho

 Dependencies                                          Dependencies
  declared in pom.xml                                    declared in
                                                         MANIFEST.MF, …




 Maven extension for OSGi/Eclipse artifacts
Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0             25.03.2013
PDE and Tycho
Plug-in Development
Environment (PDE)                                      Tycho

 MANIFEST.MF,                                         Tycho reads PDE
  feature.xml,                                          source files
  build.properties, ...
 Build path according                                 JDT compiler with
  to OSGi manifest                                      OSGi visibility rules
 JUnit plug-in tests                                  eclipse-test-plugin

 Headless build for PDE projects
Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0              25.03.2013
p2 and Tycho

Equinox p2                                             Tycho

 p2 repositories for                                  p2 repositories for
  installation & update                                 resolving build
  of bundles                                            dependencies
 “Publish” artifacts to                               Builds p2 repositories
  p2 repositories                                       with build artifacts
 Installer (“director”)                               tycho-director-plugin

 Maven front-end for p2
Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0             25.03.2013
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
       Contributor guide:
        wiki.eclipse.org/Tycho/Contributor_Guide
 Tycho 0.17.0 is available from Maven central


Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
Contributors & Users
 Committers
     Jan Sievers (SAP AG)
     Tobias Oberlies (SAP AG)
     Igor Fedorenko (Sonatype Inc.)
 Various contributions
 Users
     Eclipse platform and many other Eclipse projects
          “Common Build Infrastructure” (CBI): Services for Tycho
            adoption at eclipse.org
     Commercial users: JBoss tools, Sigasi, SAP AG, …

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




Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
Hands-on Exercises
 Create and build an Eclipse 4 RCP application
     Create a plug-in with a sample Eclipse 4 RCP
      application
     Add a unit test
     Add a feature
     Create a p2 repository
     Build a distribution with the RCP application




Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
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) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
Related Sessions
 Tycho BoF Mon 8:00 pm, Seaport Ballroom B
 Presentations from Tycho users
     Real World: Tycho Tue 5:00 pm, Cityview Ballroom 2
     From Custom Maven Builds to Tycho
      Wed 10:30 am, Back Bay
     Automating the consumption of Eclipse for internal
      use Thu 1:30 pm, Harborview Ballroom 2
 Comparison of build technologies
     Bundle Building Wed 1:30 pm, Beacon Hill 1
Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013
Please give feedback!

   1. Sign In: www.eclipsecon.org


   2. Select Session Evaluate


   3. Vote




Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0   25.03.2013

Weitere ähnliche Inhalte

Was ist angesagt?

p2, modular provisioning for OSGi
p2, modular provisioning for OSGip2, modular provisioning for OSGi
p2, modular provisioning for OSGiPascal Rapicault
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2Pascal Rapicault
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Embarcadero Technologies
 
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GITPuppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GITMartin Alfke
 
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesPuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesMartin Alfke
 
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...Ivan Kravets
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Embarcadero Technologies
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationDanilo Pianini
 
Eclipse Training - RCP & Industrialization
Eclipse Training - RCP & IndustrializationEclipse Training - RCP & Industrialization
Eclipse Training - RCP & IndustrializationLuca D'Onofrio
 
Solum - OpenStack PaaS / ALM - Austin OpenStack summit
Solum - OpenStack PaaS / ALM - Austin OpenStack summitSolum - OpenStack PaaS / ALM - Austin OpenStack summit
Solum - OpenStack PaaS / ALM - Austin OpenStack summitdevkulkarni
 
Solum - OpenStack PaaS / ALM
Solum - OpenStack PaaS / ALMSolum - OpenStack PaaS / ALM
Solum - OpenStack PaaS / ALMdevkulkarni
 
OSGi Versioning And Testing
OSGi Versioning And TestingOSGi Versioning And Testing
OSGi Versioning And Testingpvanderlei
 
ADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized worldADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized worldMartin Alfke
 
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...mfrancis
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...Embarcadero Technologies
 
Flatpak and AppImage usage on openSUSE
Flatpak and AppImage usage on openSUSEFlatpak and AppImage usage on openSUSE
Flatpak and AppImage usage on openSUSEKukuh Syafaat
 
Contributing to OpenStack
Contributing to OpenStackContributing to OpenStack
Contributing to OpenStackdevkulkarni
 
Linux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxLinux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxEmbarcadero Technologies
 

Was ist angesagt? (20)

p2, modular provisioning for OSGi
p2, modular provisioning for OSGip2, modular provisioning for OSGi
p2, modular provisioning for OSGi
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
 
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GITPuppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
 
Compare framework
Compare frameworkCompare framework
Compare framework
 
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesPuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and Provides
 
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Eclipse Training - RCP & Industrialization
Eclipse Training - RCP & IndustrializationEclipse Training - RCP & Industrialization
Eclipse Training - RCP & Industrialization
 
Solum - OpenStack PaaS / ALM - Austin OpenStack summit
Solum - OpenStack PaaS / ALM - Austin OpenStack summitSolum - OpenStack PaaS / ALM - Austin OpenStack summit
Solum - OpenStack PaaS / ALM - Austin OpenStack summit
 
Solum - OpenStack PaaS / ALM
Solum - OpenStack PaaS / ALMSolum - OpenStack PaaS / ALM
Solum - OpenStack PaaS / ALM
 
Streaming in grails
Streaming in grailsStreaming in grails
Streaming in grails
 
OSGi Versioning And Testing
OSGi Versioning And TestingOSGi Versioning And Testing
OSGi Versioning And Testing
 
ADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized worldADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized world
 
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...
Building Server-Side Eclipse based Web applications - Jochen Hiller, Principa...
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
 
Flatpak and AppImage usage on openSUSE
Flatpak and AppImage usage on openSUSEFlatpak and AppImage usage on openSUSE
Flatpak and AppImage usage on openSUSE
 
Contributing to OpenStack
Contributing to OpenStackContributing to OpenStack
Contributing to OpenStack
 
Linux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxLinux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for Linux
 

Ähnlich wie Tycho Tutorial EclipseCon 2013

Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with TychoBuilding Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tychojsievers
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tychojsievers
 
Eclipse Overview
Eclipse Overview Eclipse Overview
Eclipse Overview Lars Vogel
 
Eclipse RCP Overview @ Rheinjug
Eclipse RCP Overview @ RheinjugEclipse RCP Overview @ Rheinjug
Eclipse RCP Overview @ RheinjugLars Vogel
 
Sleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your ProductSleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your ProductSubramanyam C
 
Simplifying RCP Update and Install
Simplifying RCP Update and InstallSimplifying RCP Update and Install
Simplifying RCP Update and Installsusanfmccourt
 
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application PlatformEclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application PlatformTonny Madsen
 
javagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformjavagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformTonny Madsen
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insTonny Madsen
 
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0Diego Zuluaga
 
Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Pascal Rapicault
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with UnikraftNETWAYS
 
Run your Java apps on Cloud Foundry
Run your Java apps on Cloud FoundryRun your Java apps on Cloud Foundry
Run your Java apps on Cloud FoundryAndy Piper
 
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)jaxLondonConference
 
OSGi Sticker Shock Eclipse Con 2010
OSGi Sticker Shock   Eclipse Con 2010OSGi Sticker Shock   Eclipse Con 2010
OSGi Sticker Shock Eclipse Con 2010ericjohnson
 
Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Mikkel Flindt Heisterberg
 

Ähnlich wie Tycho Tutorial EclipseCon 2013 (20)

Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with TychoBuilding Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tycho
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tycho
 
Eclipse Overview
Eclipse Overview Eclipse Overview
Eclipse Overview
 
Eclipse
EclipseEclipse
Eclipse
 
Eclipse RCP Overview @ Rheinjug
Eclipse RCP Overview @ RheinjugEclipse RCP Overview @ Rheinjug
Eclipse RCP Overview @ Rheinjug
 
Sleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your ProductSleep Peacefully as Maven Tycho Builds your Product
Sleep Peacefully as Maven Tycho Builds your Product
 
Simplifying RCP Update and Install
Simplifying RCP Update and InstallSimplifying RCP Update and Install
Simplifying RCP Update and Install
 
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application PlatformEclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
Eclipse Banking Day in Copenhagen - Eclipse RCP as an Application Platform
 
What's new in p2 (2009)?
What's new in p2 (2009)?What's new in p2 (2009)?
What's new in p2 (2009)?
 
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
 
javagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platformjavagruppen.dk - e4, the next generation Eclipse platform
javagruppen.dk - e4, the next generation Eclipse platform
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-ins
 
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
 
Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)Discovery the p2 API (updated to Indigo)
Discovery the p2 API (updated to Indigo)
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
 
Codename one
Codename oneCodename one
Codename one
 
Run your Java apps on Cloud Foundry
Run your Java apps on Cloud FoundryRun your Java apps on Cloud Foundry
Run your Java apps on Cloud Foundry
 
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)
 
OSGi Sticker Shock Eclipse Con 2010
OSGi Sticker Shock   Eclipse Con 2010OSGi Sticker Shock   Eclipse Con 2010
OSGi Sticker Shock Eclipse Con 2010
 
Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)
 

Kürzlich hochgeladen

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Kürzlich hochgeladen (20)

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

Tycho Tutorial EclipseCon 2013

  • 1. BUILDING ECLIPSE PLUG-INS AND RCP APPLICATIONS WITH TYCHO 25.03.2013 Tobias Oberlies & Jan Sievers, SAP AG
  • 2. Tutorial Outline  Part 1: Introduction 9:00 am – 9:30 am  Tycho Overview  Part 2: Hands-on Tutorial 9:30 am – 12:00 pm  Building an e4 RCP application with Tycho Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 3. Part 1: Introduction Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 4. What is Tycho?  Tycho is a Maven extension for building Eclipse artifacts  Eclipse plug-ins/OSGi bundles  Features  p2 repositories  RCP applications/Eclipse distributions Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 5. Related Technologies Plug-in Development Environment (PDE) Maven Tycho Equinox p2 Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 6. Maven and Tycho Maven Tycho  mvn clean install mvn clean install  Packaging types for eclipse-plugin, standard artifacts eclipse-feature, …  Tests run in build eclipse-test-plugin  Customize build with Most Maven plugins additional goals also work in Tycho (FindBugs, code projects generators, …) Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 7. Maven and Tycho (cont.) Maven Tycho  Dependencies  Dependencies declared in pom.xml declared in MANIFEST.MF, …  Maven extension for OSGi/Eclipse artifacts Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 8. PDE and Tycho Plug-in Development Environment (PDE) Tycho  MANIFEST.MF, Tycho reads PDE feature.xml, source files build.properties, ...  Build path according JDT compiler with to OSGi manifest OSGi visibility rules  JUnit plug-in tests eclipse-test-plugin  Headless build for PDE projects Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 9. p2 and Tycho Equinox p2 Tycho  p2 repositories for p2 repositories for installation & update resolving build of bundles dependencies  “Publish” artifacts to Builds p2 repositories p2 repositories with build artifacts  Installer (“director”) tycho-director-plugin  Maven front-end for p2 Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 10. 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  Contributor guide: wiki.eclipse.org/Tycho/Contributor_Guide  Tycho 0.17.0 is available from Maven central Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 11. Contributors & Users  Committers  Jan Sievers (SAP AG)  Tobias Oberlies (SAP AG)  Igor Fedorenko (Sonatype Inc.)  Various contributions  Users  Eclipse platform and many other Eclipse projects  “Common Build Infrastructure” (CBI): Services for Tycho adoption at eclipse.org  Commercial users: JBoss tools, Sigasi, SAP AG, … Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 12. Part 2: Hands-on Tutorial Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 13. Hands-on Exercises  Create and build an Eclipse 4 RCP application  Create a plug-in with a sample Eclipse 4 RCP application  Add a unit test  Add a feature  Create a p2 repository  Build a distribution with the RCP application Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 14. 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) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 15. Related Sessions  Tycho BoF Mon 8:00 pm, Seaport Ballroom B  Presentations from Tycho users  Real World: Tycho Tue 5:00 pm, Cityview Ballroom 2  From Custom Maven Builds to Tycho Wed 10:30 am, Back Bay  Automating the consumption of Eclipse for internal use Thu 1:30 pm, Harborview Ballroom 2  Comparison of build technologies  Bundle Building Wed 1:30 pm, Beacon Hill 1 Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013
  • 16. Please give feedback! 1. Sign In: www.eclipsecon.org 2. Select Session Evaluate 3. Vote Copyright (c) 2013 SAP AG and others. Licensed under EPL v1.0 25.03.2013

Hinweis der Redaktion

  1. Packaging types -> declarative build „what to build“ not „how to build“ Use Tycho -> get lots of other tools from the Maven ecosystem for free
  2. POM = project object model, main configuration file for a Maven build
  3. Eclipse Platform -> probably the most complicated build you can imagine -> CBI project has ported it to Tycho