Custom Code Development
This content applies solely to Appian RPA, which must be purchased separately from the Appian base platform.

Robotic processes are highly customized to suit your business's key use cases. Developers play an essential role in creating, configuring, and deploying robotic processes in Appian RPA. This page describes the steps to set up your local development environment so all components are communicating properly for efficient development.

Prerequisite skills

Appian RPA's robotic processes are written in Java, so you need some knowledge of general programming and Java to develop robotic processes. We also recommend that you're familiar with the technologies and techniques most frequently used in Java programming. To manage your Java code, it's recommended to use a version control system like Git.

It is also highly recommended that you have some experience working in an integrated development environment (IDE) like Eclipse or IntelliJ or, at least, a code editor. To package and deploy robotic processes, you need some knowledge of Maven commands.

Appian RPA Overview

Familiarize yourself with Appian RPA's architecture to understand how components integrate and communicate with each other. To get the most out of this page, we recommend you have some knowledge of Appian RPA terms and concepts.

Each robotic processes runs under the strictest security protocols, using encrypted communications (SSL) and protecting resources by using profiles and permissions.


The following diagram shows how a developer fits into the Appian RPA ecosystem to develop and manage robotic processes.


A developer uses the Appian RPA console to configure robotic processes and monitor the results. To execute a robotic process, the developer may also need to set up resources. To establish communication with the console, a resource must have an agent installed and running on it. Each of these components is essential in setting up your development environment to test your robotic processes.

Learn more about the Appian RPA Console.

Learn more about how to setup and use resources.

Learn more about how to setup and use an agent.

Development environment

Appian recommends the following development environment for creating robotic processes:

To properly deploy code and test robotic processes, you'll also need to access the repository and identify resources.

Code repository

Appian RPA uses Maven to store robotic process artifacts. As you develop robotic process code, you'll deploy your changes to the central repository.

The repository is an essential component because the necessary dependencies to develop and operate your robotic processes are stored here. You will deploy your robotic process in this repository when it's finished, making it available for the console and enabling it to be managed or sent to the agent to run on the resource.

You can find your Maven API key from the Appian RPA console. Click Settings > Refresh Maven Key and copy the value. Note that this is the only time you'll be able to view and copy this specific key.

RPA development resource

In Appian RPA, you deploy, configure, and execute robotic processes on one or several resources. A resource is a computer, piece of equipment, or virtual machine in which robots can run. As you set up your development environment, it can be helpful for you to also identify the resources where you'll develop, test, and ultimately deploy your robotic processes.

Although you could use the same machine to develop and execute robotic processes, it is recommended that the resource where the robot code is written is different from the resource that the robotic process runs on. The robotic process interacts with the keyboard, mouse, and clipboard in the same way as a human user would, making it more difficult to debug the robot if it runs on the development environment. Having a separate resource for testing executions allows you to observe the execution and debug from your development environment more easily.

Appian RPA is compatible with the main virtualization systems, such as Citrix, VMware or VirtualBox.

Check your environment

Before you get started, check that your environment is set up appropriately. Below, we'll check the Java JDK version, as well as the Maven version and its integration in Eclipse.

Java JDK

As already noted, regardless of what operating system runs in the machine in which your robots will execute, any environment with Java version 1.8 or higher installed will be enough for you to develop your robotic processes.

  1. Open the terminal.
  2. Enter the command javac -version.
  3. If your Java JDK version meets the requirements (version 1.8 or higher), you're good to go. If your version isn't correct, refer to the Configurator topic to learn how to fix it.

You might find that javac is not available in the Path system's environment variable. In such case, you should use the command java --version instead, provided you have a JDK installed. Alternatively, you can navigate to the JDK installation folder and locate the javac executable file.


To check your Maven version, enter the command mvn --version.

This command shows information about the Maven version and what Java version you have installed, and their paths, as well as other information about the operating system.


Verify that Eclipse is properly integrated and set up with Java and Maven:

  1. In Eclipse, click Window > Preferences.
  2. Find the Java item and check the Compiler subsection. You should see in Compiler compliance level that 1.8 is selected.
  3. Click Installed JREs and check that the Java 8 JDK is set up.

Now let's check the Maven integration in Eclipse:

  1. In the Preferences window, click Maven.
  2. Go to the Installations section to check that Maven 3 is selected and configured.

It is important that the proper version (3.0 or higher) and the proper installation folder of Maven are set up. In the example above, the installation folder is /usr/share/maven.

Get developing!

With your environment set up and configured, you're ready to get started developing robotic processes in Appian RPA.

Open in Github Built: Fri, Nov 04, 2022 (07:10:52 PM)

On This Page