What This Book Is About
This book is about plugins for JIRA, the popular issue tracker from Atlassian. An issue tracker lets people collaborate better when there are things to be done. You can use an issue tracker for everything from tracking bugs in software, to customer support requests, and beyond. Plugins extend what JIRA can do and can be developed separately from JIRA.
This book is intended for people who want to create and maintain JIRA plugins. Plugins have been a part of JIRA since version 3.0 and a significant community has emerged around them. That community is even large enough to have an annual gathering known as AtlasCamp .
Writing JIRA plugins requires some technical knowledge. This book assumes that you can write simple Java program and are familiar with ideas such as implementing an interface, extending a class and where to find information about the core Java classes. In a few places this book also assumes that you have access to the JIRA source code. This is available from Atlassian with any JIRA license that costs $10 or more.
The intention of this book is to supplement but not repeat the extensive JIRA documentation freely available at (OReilly).
In selecting the different plugins to cover in this book, I was conscious of the different kinds of JIRA plugins that I am asked to implement most frequently as a software toolsmith. I chose the most commonly requested ones. If you cant find a particular plugin type and think it should be in this book, then please do contact me with more details.
JIRA Versions and System Details
This book refers to the version JIRA 4.2.4 Standalone that was released in February 2011. Where there are differences between versions of JIRA these are noted in the text.
The system used throughout this book is a Linux server with JDK 1.6 and MySQL. The main differences for other operating systems, deployment types, databases, and JVMs are the installation instructions and the names and paths of certain files. These details are described in the online JIRA documentation.
Development Environment
This book was written using OSX 10.6.7 on a Mac Mini 2.1 using DocBook 4.5, Emacs 22.1.50.1 and Subversion 1.5.2. The output files were generated using a custom remote toolchain provided by OReilly for their authors. Using a remote toolchain makes it easier to use DocBook and allows books to be updated more frequently.
Technical Reviewers
Jamie EchlinJamie has been using the Atlassian tools since 2006, and is the author of several popular JIRA plugins.
David FischerDavid founded the consulting and IT services company Innovalog in 2003.
John KodumalJohn is a Technical Lead at Atlassian.
Acknowledgments
Many people at Atlassian have encouraged and assisted me with this book, but Bryan Rollins, Andreas Knecht, Jonathan Doklovic, and Dan Rosen stand out. Thanks also to my new colleagues at CustomWare. But in the end its the Atlassian developer community that makes it worth writing a book like this. Thank you to all of you for your generously given information and intriguing discussions over the past five years.
My sincere thanks also go to all the clients of Consulting Toolsmiths for directly and indirectly providing me with the knowledge of which JIRA plugins are hardest to get right.
Behind all I do is my dearest wife Katherine and beloved children Lizi, Jacob, and Luke. Thank you all, and may the love of God rest and remain with you always.
Conventions Used in This Book
The following typographical conventions are used in this book:
Italic
Indicates new terms, URLs, email addresses, filenames, and file extensions.
Constant width
Used for program listings, as well as within paragraphs to refer to program elements such as variable or function names, databases, data types, environment variables, statements, and keywords.
Constant width bold
Shows commands or other text that should be typed literally by the user.
Constant width italic
Shows text that should be replaced with user-supplied values or by values determined by context.
AdministrationSystemSystem Information
Shows menu selections within JIRA, in this case the Administration menu item, the System menu item and then the System Information menu item.
Tip
This icon signifies a tip, suggestion, or general note.
Caution
This icon indicates a warning or caution.
Using Code Examples
The source code for all the examples in this book is available from https://plugins.atlassian.com/41293.
This book is here to help you get your job done. In general, you may use the code in this book in your programs and documentation. You do not need to contact us for permission unless youre reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from this book does not require permission. Selling or distributing a CD-ROM of examples from OReilly books does require permission. Answering a question by citing this book and quoting example code does not require permission. Incorporating a significant amount of example code from this book into your products documentation does require permission.
We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN. For example: Practical JIRA Plugins by Matthew B. Doar (OReilly). Copyright 2011 OReilly Media, 978-1-449-30827-8.
If you feel your use of code examples falls outside fair use or the permission given above, feel free to contact us at .
Safari Books Online
Note
Safari Books Online is an on-demand digital library that lets you easily search over 7,500 technology and creative reference books and videos to find the answers you need quickly.
With a subscription, you can read any page and watch any video from our library online. Read books on your cell phone and mobile devices. Access new titles before they are available for print, and get exclusive access to manuscripts in development and post feedback for the authors. Copy and paste code samples, organize your favorites, download chapters, bookmark key sections, create notes, print out pages, and benefit from tons of other time-saving features.