SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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
 

Similar a 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
 

Similar a 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)
 

Último

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Último (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

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

Notas del editor

  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