sleep peacefully as maven tycho builds your product

15
Copyright 2016-2017 Annamalai Chockalingam, ANCIT Consulting Subramanyam CS, EverTeam “Sleep Peacefully” as Maven Tycho builds your Product

Upload: subramanyam-c

Post on 11-Feb-2017

96 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Annamalai Chockalingam, ANCIT ConsultingSubramanyam CS, EverTeam

“Sleep Peacefully”as Maven Tycho builds your Product

Page 2: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

PDE BUILD

Automation of plugin build process based on MANIFEST and BUILDComplete automation was based on ANTBuild Machine Setup & dependencies Management was a NightMare

Page 3: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

PDE BUILD

Page 4: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

DeclarativeDependencies is managed by Maven [Central Repositories]Pom.xml. Does not support Manifest.mf Dependencies

Very Good for NON OSGI Bundle/JAR Packaging

Terms to be aware of

MAVEN BUILD

Page 5: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

MAVEN BUILD

Page 6: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Tycho BUILD

Bridge between MAVEN and PDE Build

Build process based on MANIFEST and BUILDAutomation based on MAVEN ScriptsDependencies Management Automation based on P2 Repositories

Page 7: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Tycho BUILD

Packaging ArtifactsEclipse-plugin : for PluginsEclipse-feature : for FeatureEclipse-repository : for Site and Product

General Project for Site and Product- Containing category.xml- Containing product configuration file

Page 8: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Tycho INSTALLATION

Step 1 : Installation of m2e Plugins

Step 2 : Installation of Tycho Configurator

Page 9: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Demo TIME

Page 10: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Courtesy : Andreas Mülder Blog

Demo SUCCESS

Page 11: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Maven Tycho Utilities

https://marketplace.eclipse.org/content/maven-tycho-utilities

https://github.com/ANCIT/tycho-examples

Page 12: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Non OSGI Jars

All this while we only spoke about Plugin Dependencies. What if your Project is dependent on NON OSGI Bundles [JAR]With Tycho it is Not possible due to the Manifest First Approach / You cant run this in Mixed MODE.

Approach 1 : Commit the JARsKeep the JAR in your Plugin, CheckIn Jar into your Source Control SystemApproach 2 : Using Maven ExtensionsDownloading and Copying into a Specific Folder which is already added in Build Paths

Page 13: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Pom LESS Build

Why do we need POM.xml files in Tycho Builds since its is using PDE artifacts.

Plugins and Features do not require POM.xml files Just have only one POM.xml for Parent Project You need a POM.xml for Update Site or Products. Works only on Eclipse Mars and Tycho 0.24.0 or later. Plugins and Features must be relative to parent project always.

Page 14: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Maven LESS Build

Looking forward to see you @ Eclipse Summit 2017

“Migrated the Complete Project to Maven Tycho Finally&

The Happy News is your Build Technology is Obselete”

Page 15: Sleep Peacefully as Maven Tycho Builds your Product

Copyright 2016-2017

Important Links

Looking forward to see you @ Eclipse Summit 2017

http://www.ancitconsulting.com/tutorials/

https://github.com/ANCIT/tycho-examples

https://wiki.eclipse.org/Tycho/Reference_Card

https://marketplace.eclipse.org/content/maven-tycho-utilities

https://marketplace.eclipse.org/content/github-extensions

https://github.com/ANCIT/tycho-examples

THANK YOU