Book Image

Eclipse Plug-in Development Beginner's Guide - Second Edition

By : Alex Blewitt
Book Image

Eclipse Plug-in Development Beginner's Guide - Second Edition

By: Alex Blewitt

Overview of this book

Eclipse is used by everyone from indie devs to NASA engineers. Its popularity is underpinned by its impressive plug-in ecosystem, which allows it to be extended to meet the needs of whoever is using it. This book shows you how to take full advantage of the Eclipse IDE by building your own useful plug-ins from start to finish. Taking you through the complete process of plug-in development, from packaging to automated testing and deployment, this book is a direct route to quicker, cleaner Java development. It may be for beginners, but we're confident that you'll develop new skills quickly. Pretty soon you'll feel like an expert, in complete control of your IDE. Don't let Eclipse define you - extend it with the plug-ins you need today for smarter, happier, and more effective development.
Table of Contents (24 chapters)
Eclipse Plug-in Development Beginner's Guide Second Edition
Credits
Foreword
About the Author
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

Chapter 12 – Automated Builds with Tycho


Understanding automated builds and update sites

1. The GroupId, ArtifactId, and Version make a set of co-ordinates known as a GAV, which Maven uses to identify dependencies and plugins. The group is a means of associating multiple artifacts together, and the artifact is the individual component name. In OSGi and Eclipse builds, the group is typically the first few segments of the bundle name, and the artifact is the bundle name. The version follows the same syntax as the bundle's version, except that .qualifier is replaced with -SNAPSHOT.

2. The six types are pom (used for the parent), eclipse-plugin (for plug-ins), eclipse-test-plugin (for running plug-in tests and UI tests), eclipse-feature (for features), eclipse-repository (for update sites and products), and eclipse-target-definition (for defining target platforms).

3. Version numbers can be updated with mvn org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=version.number. Note that although mvn version:set exists, it will not update the plug-in versions if chosen.

4. Jars are signed to ensure that the contents of the Jar have not been modified after creation. Eclipse looks at these Jars at runtime to ensure that they are not modified, and warns if they are unsigned or if the signatures are invalid. The standard JDK tool jarsigner is used to sign and verify Jars; the JDK tool keytool is used to manipulate keys.

5. A simple HTTP server can be launched with python -m SimpleHTTPServer. In Python 3, the command is python3 -m http.server.

6. Eclipse features are typically published in the Eclipse Marketplace at http://marketplace.eclipse.org. This includes both open-source and commercial plug-ins.