JIRA Software development guide

About JIRA Software Development

You can develop add-ons for JIRA Software just as you can for other types of Atlassian applications. However, developing for JIRA Software introduces a few wrinkles to the usual development process, as outlined below.

JIRA Software is an application that is built on the JIRA platform and has its own APIs and plugin points. Therefore, to extend JIRA Software, you actually need to create a JIRA add-on that interacts with these integration points in some way.

JIRA Software exposes a single module type, JIRA Agile LinkProvider Plugin Module. But you can use the modules in the underlying JIRA application with JIRA Software locations as plugin points as well. The Tutorial - Adding a Detail View Tab tutorial provides an example of this type of JIRA Software add-on.

JIRA Software add-on development flow

P2 add-ons

  1. Create your add-on project as you would any other JIRA add-on, for instance, by using the atlas-create-jira-plugin SDK command. This command creates the add-on project files and skeleton code.
  2. Add any JIRA modules or common modules, e.g. web panel, by using atlas-create-jira-plugin-module. Be aware that if you want to implement the LinkProvider module, you will need to add the module code by hand, as described here.
  3. When ready to build and test your add-on, run the atlas-package command from the project root directory. This command creates a packaged JAR file that you can install into JIRA. 
  4. Configure AMPS to run JIRA with JIRA Software installed. If you haven't done this before, see Configure AMPS to run JIRA Core with additional applications installed.
  5. Start up JIRA. For early development and testing, you can use the development instance that the SDK gives you when you run the following command (set the version to 7.0.0 or later)atlas-run-standalone --product jira --version 7.0.0. 
  6. Log in to JIRA as an administrator, using the default username and password combination of admin/admin.
  7. Install the add-on you built in step #2 with the atlas-package command. There are two ways that you can do this:
    1. Go to the Administration Console and open the "Manage Add-ons" page. On the page, click Upload add-on and choose the JAR file that the atlas-package command generated for you. You'll find the JAR file in the target directory of your project home after running atlas-package.
    2. Using the SDK command line tools: using you terminal, step into your project home directory and simply run atlas-install-plugin (after having packaged your add-on JAR using the atlas-package SDK command). This command will simply upload your add-on to UPM (and can considerably shorten your development flow).

You should now be able to see your add-on in the JIRA Software UI. Every time you change your add-on code or resource, reload your add-on by running the atlas-package command again, and then remove and reinstall the add-on JAR file from the Manage Add-ons page.

The Tutorial - Adding a Detail View Tab tutorial takes you through these steps while building a sample JIRA Software add-on.

Connect add-ons

As mentioned above, to build an add-on for JIRA Software, you essentially need to build a JIRA add-on. If you haven't built a Connect add-on for JIRA before, this tutorial will help you get started: Tutorial: Display your projects in JIRA (Connect documentation)

However, note the following differences:

  • Rather than starting a local JIRA instance, you will need to start a local JIRA Software instance. See the 'Start the local Atlassian application' section in Developing locally (Connect documentation).
  • Instead of modifying JIRA modules, you will probably want to modify JIRA Software web sections and web panels instead. This tutorial provides an example of how to do this: Tutorial - Adding a dropdown to an agile board

JIRA Software REST API

JIRA Service Desk has its own APIs, separate from the JIRA platform APIs. The REST API for JIRA Software Cloud is documented here: https://docs.atlassian.com/jira-software/REST/cloud/

You can find the links to the other JIRA Software API documentation here: JIRA APIs.

Resources

To learn more about developing for JIRA Agile, see the following resources:

Was this page helpful?

Have a question about this article?

See questions about this article

Powered by Confluence and Scroll Viewport