Submit Search
Upload
What's New in Plug-in Development (Galileo)
•
7 likes
•
1,969 views
Chris Aniszczyk
Follow
Given at Eclipse Forum Europe 2009
Read less
Read more
Technology
Entertainment & Humor
Report
Share
Report
Share
1 of 45
Recommended
OSGi For Eclipse Developers
OSGi For Eclipse Developers
Chris Aniszczyk
Democamp Munich 2013: Are you still manually coding UIs?
Democamp Munich 2013: Are you still manually coding UIs?
Maximilian Kögel
p2, your savior or your achilles heel? Everything an Eclipse team needs to kn...
p2, your savior or your achilles heel? Everything an Eclipse team needs to kn...
irbull
EclipseCon 08 - Agile RCP
EclipseCon 08 - Agile RCP
Heiko Seeberger
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
mfrancis
15 EMF projects in 25 minutes
15 EMF projects in 25 minutes
Cédric Brun
OSGi, Eclipse and API Tooling
OSGi, Eclipse and API Tooling
Chris Aniszczyk
Together in Eclipse
Together in Eclipse
Tomasz Zarna
Recommended
OSGi For Eclipse Developers
OSGi For Eclipse Developers
Chris Aniszczyk
Democamp Munich 2013: Are you still manually coding UIs?
Democamp Munich 2013: Are you still manually coding UIs?
Maximilian Kögel
p2, your savior or your achilles heel? Everything an Eclipse team needs to kn...
p2, your savior or your achilles heel? Everything an Eclipse team needs to kn...
irbull
EclipseCon 08 - Agile RCP
EclipseCon 08 - Agile RCP
Heiko Seeberger
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
mfrancis
15 EMF projects in 25 minutes
15 EMF projects in 25 minutes
Cédric Brun
OSGi, Eclipse and API Tooling
OSGi, Eclipse and API Tooling
Chris Aniszczyk
Together in Eclipse
Together in Eclipse
Tomasz Zarna
Best Strategy for Developing App Architecture and High Quality App
Best Strategy for Developing App Architecture and High Quality App
Flurry, Inc.
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
Charles Rivet
OSGi Versioning And Testing
OSGi Versioning And Testing
pvanderlei
Rational Rhapsody Workflow Integration with Visual Studio
Rational Rhapsody Workflow Integration with Visual Studio
Frank Braun
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and Provides
Martin Alfke
DevOps - How to get technical buy in
DevOps - How to get technical buy in
Martin Alfke
Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tycho
jsievers
PapyrusRT: Modelling and Code Generation
PapyrusRT: Modelling and Code Generation
Ernesto Posse
Head first android apps dev tools
Head first android apps dev tools
Shaka Huang
ADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized world
Martin Alfke
Build your android app with gradle
Build your android app with gradle
Swain Loda
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Zachary Christmas
Introduction to Eclipse Che / EclipseCon 2014
Introduction to Eclipse Che / EclipseCon 2014
Florent BENOIT
Pose extraction for real time workout assistant - milestone 1
Pose extraction for real time workout assistant - milestone 1
Zachary Christmas
Papyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipse
Charles Rivet
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Martin Alfke
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
Charles Rivet
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Zachary Christmas
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
VMware Tanzu
Cloud native buildpacks_collabnix
Cloud native buildpacks_collabnix
Suman Chakraborty
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
apidays
Software Configuration Management
Software Configuration Management
robertodepalma
More Related Content
What's hot
Best Strategy for Developing App Architecture and High Quality App
Best Strategy for Developing App Architecture and High Quality App
Flurry, Inc.
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
Charles Rivet
OSGi Versioning And Testing
OSGi Versioning And Testing
pvanderlei
Rational Rhapsody Workflow Integration with Visual Studio
Rational Rhapsody Workflow Integration with Visual Studio
Frank Braun
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and Provides
Martin Alfke
DevOps - How to get technical buy in
DevOps - How to get technical buy in
Martin Alfke
Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tycho
jsievers
PapyrusRT: Modelling and Code Generation
PapyrusRT: Modelling and Code Generation
Ernesto Posse
Head first android apps dev tools
Head first android apps dev tools
Shaka Huang
ADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized world
Martin Alfke
Build your android app with gradle
Build your android app with gradle
Swain Loda
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Zachary Christmas
Introduction to Eclipse Che / EclipseCon 2014
Introduction to Eclipse Che / EclipseCon 2014
Florent BENOIT
Pose extraction for real time workout assistant - milestone 1
Pose extraction for real time workout assistant - milestone 1
Zachary Christmas
Papyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipse
Charles Rivet
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Martin Alfke
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
Charles Rivet
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Zachary Christmas
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
VMware Tanzu
Cloud native buildpacks_collabnix
Cloud native buildpacks_collabnix
Suman Chakraborty
What's hot
(20)
Best Strategy for Developing App Architecture and High Quality App
Best Strategy for Developing App Architecture and High Quality App
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
OSGi Versioning And Testing
OSGi Versioning And Testing
Rational Rhapsody Workflow Integration with Visual Studio
Rational Rhapsody Workflow Integration with Visual Studio
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and Provides
DevOps - How to get technical buy in
DevOps - How to get technical buy in
Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tycho
PapyrusRT: Modelling and Code Generation
PapyrusRT: Modelling and Code Generation
Head first android apps dev tools
Head first android apps dev tools
ADDO 2019 DevOps in a containerized world
ADDO 2019 DevOps in a containerized world
Build your android app with gradle
Build your android app with gradle
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Pose Extraction for Real-Time Workout Assistant: Milestone 2
Introduction to Eclipse Che / EclipseCon 2014
Introduction to Eclipse Che / EclipseCon 2014
Pose extraction for real time workout assistant - milestone 1
Pose extraction for real time workout assistant - milestone 1
Papyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipse
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Puppet Camp Germany 2020 - Puppet Control Repo and GIT
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Pose Extraction for Real-Time Workout Assistant: Milestone 3
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
Continuous Delivery: Fly the Friendly CI in Pivotal Cloud Foundry with Concourse
Cloud native buildpacks_collabnix
Cloud native buildpacks_collabnix
Similar to What's New in Plug-in Development (Galileo)
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
apidays
Software Configuration Management
Software Configuration Management
robertodepalma
Ellip Studio - Training session
Ellip Studio - Training session
terradue
Introducing the Embedded Rich Client Platform (eRCP) - Jim Robbins, IBM
Introducing the Embedded Rich Client Platform (eRCP) - Jim Robbins, IBM
mfrancis
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
Niklas Heidloff
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
Sascha Junkert
Eclipse Con 2009 Sca Tools Short Talk
Eclipse Con 2009 Sca Tools Short Talk
Vincent Zurczak
Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008
rajivmordani
Eclipse
Eclipse
Nicola Pedot
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Ulrich Krause
Put the Power of Cloud-based Modeling to Work - Spotlight Session
Put the Power of Cloud-based Modeling to Work - Spotlight Session
Obeo
gopaddle-meetup
gopaddle-meetup
Sujai Sivasamy
Deploy and Update Jakarta EE & MicroProfile applications with Paketo.pptx
Deploy and Update Jakarta EE & MicroProfile applications with Paketo.pptx
Jamie Coleman
Eclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And Tricks
Chris Aniszczyk
Codename one
Codename one
Software Infrastructure
Odo improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangria
Jorge Morales
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015
Microsoft
OSGi Versioning & Testing
OSGi Versioning & Testing
Chris Aniszczyk
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New Update
Adam John
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Diego Zuluaga
Similar to What's New in Plug-in Development (Galileo)
(20)
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
apidays LIVE Paris 2021 - APIGEE, different ways for integrating with CI/CD p...
Software Configuration Management
Software Configuration Management
Ellip Studio - Training session
Ellip Studio - Training session
Introducing the Embedded Rich Client Platform (eRCP) - Jim Robbins, IBM
Introducing the Embedded Rich Client Platform (eRCP) - Jim Robbins, IBM
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
DSAG Jahreskongress 2018 - DevOps and Deployment Pipelines in SAP ABAP Landsc...
Eclipse Con 2009 Sca Tools Short Talk
Eclipse Con 2009 Sca Tools Short Talk
Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008
Eclipse
Eclipse
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Put the Power of Cloud-based Modeling to Work - Spotlight Session
Put the Power of Cloud-based Modeling to Work - Spotlight Session
gopaddle-meetup
gopaddle-meetup
Deploy and Update Jakarta EE & MicroProfile applications with Paketo.pptx
Deploy and Update Jakarta EE & MicroProfile applications with Paketo.pptx
Eclipse Plug-in Develompent Tips And Tricks
Eclipse Plug-in Develompent Tips And Tricks
Codename one
Codename one
Odo improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangria
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015
OSGi Versioning & Testing
OSGi Versioning & Testing
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New Update
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
More from Chris Aniszczyk
Bringing an open source project to the Linux Foundation
Bringing an open source project to the Linux Foundation
Chris Aniszczyk
Starting an Open Source Program Office (OSPO)
Starting an Open Source Program Office (OSPO)
Chris Aniszczyk
Open Container Initiative Update
Open Container Initiative Update
Chris Aniszczyk
Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)
Chris Aniszczyk
Rise of Open Source Programs
Rise of Open Source Programs
Chris Aniszczyk
The Open Container Initiative (OCI) at 12 months
The Open Container Initiative (OCI) at 12 months
Chris Aniszczyk
Open Source Lessons from the TODO Group
Open Source Lessons from the TODO Group
Chris Aniszczyk
Getting Students Involved in Open Source
Getting Students Involved in Open Source
Chris Aniszczyk
Life at Twitter + Career Advice for Students
Life at Twitter + Career Advice for Students
Chris Aniszczyk
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from Twitter
Chris Aniszczyk
The Open Source... Behind the Tweets
The Open Source... Behind the Tweets
Chris Aniszczyk
Apache Mesos at Twitter (Texas LinuxFest 2014)
Apache Mesos at Twitter (Texas LinuxFest 2014)
Chris Aniszczyk
Evolution of The Twitter Stack
Evolution of The Twitter Stack
Chris Aniszczyk
Open Source Craft at Twitter
Open Source Craft at Twitter
Chris Aniszczyk
Open Source Compliance at Twitter
Open Source Compliance at Twitter
Chris Aniszczyk
Effective Development With Eclipse Mylyn, Git, Gerrit and Hudson
Effective Development With Eclipse Mylyn, Git, Gerrit and Hudson
Chris Aniszczyk
Effective Git with Eclipse
Effective Git with Eclipse
Chris Aniszczyk
Evolution of Version Control In Open Source
Evolution of Version Control In Open Source
Chris Aniszczyk
ESE 2010: Using Git in Eclipse
ESE 2010: Using Git in Eclipse
Chris Aniszczyk
SWTBot Tutorial
SWTBot Tutorial
Chris Aniszczyk
More from Chris Aniszczyk
(20)
Bringing an open source project to the Linux Foundation
Bringing an open source project to the Linux Foundation
Starting an Open Source Program Office (OSPO)
Starting an Open Source Program Office (OSPO)
Open Container Initiative Update
Open Container Initiative Update
Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)
Rise of Open Source Programs
Rise of Open Source Programs
The Open Container Initiative (OCI) at 12 months
The Open Container Initiative (OCI) at 12 months
Open Source Lessons from the TODO Group
Open Source Lessons from the TODO Group
Getting Students Involved in Open Source
Getting Students Involved in Open Source
Life at Twitter + Career Advice for Students
Life at Twitter + Career Advice for Students
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from Twitter
The Open Source... Behind the Tweets
The Open Source... Behind the Tweets
Apache Mesos at Twitter (Texas LinuxFest 2014)
Apache Mesos at Twitter (Texas LinuxFest 2014)
Evolution of The Twitter Stack
Evolution of The Twitter Stack
Open Source Craft at Twitter
Open Source Craft at Twitter
Open Source Compliance at Twitter
Open Source Compliance at Twitter
Effective Development With Eclipse Mylyn, Git, Gerrit and Hudson
Effective Development With Eclipse Mylyn, Git, Gerrit and Hudson
Effective Git with Eclipse
Effective Git with Eclipse
Evolution of Version Control In Open Source
Evolution of Version Control In Open Source
ESE 2010: Using Git in Eclipse
ESE 2010: Using Git in Eclipse
SWTBot Tutorial
SWTBot Tutorial
Recently uploaded
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Mark Billinghurst
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
BookNet Canada
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
AndikSusilo4
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Paola De la Torre
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
Puma Security, LLC
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
carlostorres15106
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
2toLead Limited
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
shyamraj55
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
ThousandEyes
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Safe Software
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Allon Mureinik
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Ridwan Fadjar
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Sinan KOZAK
Recently uploaded
(20)
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
What's New in Plug-in Development (Galileo)
1.
What’s new in
Plug-in Development Galileo Edition Chris Aniszczyk (EclipseSource) PDE Co-Lead zx@eclipsesource.com What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 1
2.
Agenda •
API Tools • UI • Build • The Future What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
3.
Agenda •
API Tools • UI • Build • The Future What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
4.
Ideal Release Equation
Developer: Compatibility (producer) + Client: Honor API contract (consumer) = Free migration What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 4
5.
The Ideal Never
Happens... What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 5
6.
The Ideal Never
Happens... Developer: (features + deprecation + Optional extensions to existing features + Replacement API + Provisional API) + Client: Illegal internal references = Migration at a cost What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 6
7.
API Compatibility
•Assist developer with mechanics of API evolution • developers document APIs with restrictions (Javadoc tags) •API Tooling identifies: • binary compatibility issues • breaking API changes, API changes after freeze • API leaks •Suggests bundle version numbers •Inserts and validates @since tags What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 7
8.
API Consumption
•API descriptions are shipped with bundles •Assist client's task of honoring API contracts • tell them when they break the rules of engagement What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 8
9.
System Library Validation
Validate system library use based on a bundle's required execution environment (BREE) • if a bundle claims to run on J2SE-1.4, access to members in J2SE-1.5 and higher are flagged as illegal API tooling provides descriptions • install description fragments • J2SE-1.5 description is 1.35 MB What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 9
10.
Demo
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 10
11.
API Tools in
Build and IDE •Analysis engine •Runs without OSGi or a workspace •Runs in engineering build (via ant tasks) •Runs in workspace (via builder) •Inputs •bundles •baseline •problem filters •Outputs •problems What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 11
12.
Infrastructure Enhancements
•Test Suite •Built a large regression test suite (>2000 tests) •Found and fixed a lot of bugs (>200) •Developed performance tests •Improved •Analysis of split bundles (compare > compare.core) •API leak analysis (reduced false positives) •Performance of incremental build (in progress) What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 12
13.
API Usage Scans
•A producer centric view of APIs used by components •Find out which parts of your API are consumed by others •Set up scans for cross sections. E.g. what are the references between WTP and the SDK? What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 13
14.
Who is {ab}using
JDT? What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 14
15.
Demo
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 15
16.
Why API Usage
Scans? API producers can see what internals are being used • Inform clients how to use proper API • Determine what new API needs to be added • Know what clients will be broken • Avoid breaking internals until clients have migrated Future Directions? • Consumers provide producers with API use scan • Tooling warns when producer breaks a dependency • Central registry of API use scans What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 16
17.
Agenda •
API Tools • UI • Build • The Future What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
18.
Target Definitions
A fundamental task of PDE is to manage the set of plug-ins (bundles) that the workspace is compiled and run against • Provisional API for target definitions • Compose target with various bundle sources installations vs. directories o features o set of installable units from p2 repositories o • Leveraging the API within PDE an API baseline is just a target definition o plug-in import o What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 18
19.
Target Definition User
Interface • Instead of having one target platform, the user can manage a set of target definitions and switch between them • Targets definitions are backed by files in the metadata or workspace • Preference page sets workspace's active target and provides wizards to create/edit targets • Users can modify target definitions using an editor What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 19
20.
Manage Target Definitions
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 20
21.
Edit Target Definitions
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 21
22.
Demo
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 22
23.
Plug-in Export Enhancements
Export and install into running platform • build and export plug-ins and install them into the running host • replaces the old quot;export, copy, paste, delete, restartquot; slam technique Export existing class files from workspace • avoid re-compiling Generate source bundles Keypass support What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 23
24.
Plug-in Export and
p2 Metadata Export with Metadata • Current support uses 3.4 metadata generator (binary jars) • Coming in 3.5 metadata support using p2 publisher (source) Exporting Products • Coming in 3.5, product export with metadata will perform a director install to get a fully p2 enabled product. What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 24
25.
Demo
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 25
26.
Start Levels
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 26
27.
Declarative Services Tooling
• OSGi Declarative Services in Eclipse 3.5 • PDE provides DS Tooling What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 27
28.
Demo
What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 28
29.
Product Definition Enhancements
• Versions • License • Start levels • Properties • Optional Product Extension What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 29
30.
Target Platform State
• The state of the state (target platform) What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 30
31.
Plug-in Spy
• I Spy Menus! What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 31
32.
Plug-in Registry
• OSGi Services What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 32
33.
Category Definitions
• Categorize your features What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 33
34.
Agenda •
API Tools • UI • Build • The Future What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
35.
Build and p2
Building with p2: quot;p2.gathering=truequot; • Supports publishing from source by gathering compile results • Feature builds result in a p2 repository • Product builds result in a installed p2 enabled product (or repo) • Consume zips of repositories in your build via transformed repos p2 releng tools • Process artifact repositories • Sign, perform pack200 processing • Mirror tools: o Mirror using a baseline to keep pre-existing binaries. o Use a comparator to detect differences against pre-existing binaries. What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 35
36.
Sorting Dependencies
In Eclipse 3.4 and earlier, compilation is done via the feature hierarchy • Features are visited depth-first. • Within a given feature, plug-ins are compiled in dependency order • Required careful management of feature hierarchy In Eclipse 3.5, we can sort bundles according to dependencies • parallelCompilation=true • flattenDependencies=true <project name=quot;Compile masterquot; default=quot;mainquot;> <target name=quot;mainquot;> <parallel threadsPerProcessor='3'> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.junit4quot; target=quot;build.jarsquot;/> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.eclipse.rcpquot; target=quot;build.jarsquot;/> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.eclipse.osgiquot; target=quot;build.jarsquot;/> </parallel> <parallel threadsPerProcessor='3'> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.eclipse.jdt.junit4.runtimequot; target=quot;build.jarsquot;/> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.eclipse.jdt.doc.userquot; target=quot;build.jarsquot;/> <ant antfile=quot;build.xmlquot; dir=quot;plugins/org.eclipse.jdt.doc.isvquot; target=quot;build.jarsquot;/> </parallel> .... What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 36
37.
More Build Improvements
• Performance Improvements reusing .class files from the workspace o avoiding some copying while building plug-ins o publishing to a p2 repository directly from source o • Signing with Keypass • Per Feature Individual Source Bundles • Product build improvements • Custom Execution Environments What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 37
38.
Agenda •
API Tools • UI • Build • The Future What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
39.
API Tooling
• API comparison views/reports show me the API changes between two releases o • Determine compatible version ranges of require bundles o as dependencies are introduced/removed o which versions satisfy my set of references o • Analyze pure Java projects need a way to specify package visibility (API descriptions) o JSR 277 - Java Module System o • Tighter integration with Java builder feed a fine grained set of access rules to the Java compiler o • Package level versioning agree on a versioning specification o • Analyze extension points & extensions What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 39
40.
Target Management
Support target platform per project in the workspace • share target definition on classpath with team • share API baseline on a classpath with team API to compose/manipulate targets Support provisioned targets via repositories • bundles are actually installed into target (using p2) • has a managed profile • running/debugging installs workspace bundles and leverages OSGi framework to perform launch Unify target concepts/implementation • target platform, launch configs, products all have similar information What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 40
41.
Launching
•Support other OSGi Frameworks •Take advantage of new OSGi Launching APIs What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 41
42.
Repository Tooling
• Repository Management browse publish install into target(s) What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 42
43.
Build
•Further Integration with p2 •Improved fetching from p2 repositories •Improved reuse of p2 metadata •Publishing p2 products •Incremental Building •Workspace Integration What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 43
44.
OSGi and Community
Building We aren't alone in the bundle tooling world! No reason to reinvent the wheel! PDE is attended the OSGi Tool Summit What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource 44
45.
Thank you for
your attention! • Questions and feedback welcome! • What do you want from PDE? Chris Aniszczyk (EclipseSource) zx@eclipsesource.com What’s New in Plug-in Development | Galileo Edition | © 2009 EclipseSource
Editor's Notes