The relsvr-rap CLI builds Relativity Application Package (RAP) files from your application schema, resource files, assemblies, and custom pages. As part of the build process, the CLI will also perform certain validation checks on the RAP, such as whether assemblies contained within the RAP reference the expected version of Relativity SDKs for a given Relativity Server release. Starting with Relativity Server 2026, RAPs that are uploaded to a Relativity Server will display a warning if they do not pass RAP Builder's validations, or were built without using RAP Builder.
- Find and download the latest
rapbuilderrelease from GitHub. - Extract the contents of the zip file somewhere on your local computer.
- Copy
relsvr-rap.exeto a directory that is included in your%PATH%environment variable, or update the environment variable to include the folder that containsrelsvr-rap.exe.
relsvr-rap.exe build --source <path> --input <file> --version <version> --relativity-server-release <year> [--warnings-as-errors <true|false>] [--log-file <path>] [--log-level <level>]
| Parameter | Short Form | Required | Type | Description |
|---|---|---|---|---|
| --source | -s | Yes | String | Repository root for the RAP build. Paths inside the input XML are resolved from this directory. |
| --input | -i | Yes | String | Path to the RAP build XML (for example, DevelopmentScripts\build.xml). Can be absolute or relative to --source. |
| --version | -v | Yes | String | RAP package version (for example, 1.0.0.0). |
| --relativity-server-release | -r | Yes | Integer | Target Relativity Server release year (for example, 2024, 2025). |
| --warnings-as-errors | -w | No | Boolean | Treat warnings as build failures when set to true. |
| --log-file | -l | No | String | File path for build logs (for example, Artifacts\Logs\rapbuild.log). |
| --log-level | --ll | No | String | Logging verbosity. Typical values: Debug, Information, Warning, Error, Fatal. |
The --input parameter expects an XML file with a particular structure. An example of this file is provided below.
<BuildTools>
<RAPBuilder>
<Applications>
<Application name="SampleRap">
<Destination>Artifacts\SampleRap.rap</Destination>
<ApplicationSchema>ApplicationsXML/application.xml</ApplicationSchema>
<Assemblies>
<Assembly>Source\SampleRap\bin\SampleRap.dll</Assembly>
</Assemblies>
<ResourceFiles />
<CustomPages>
<CustomPage guid="a412cfce-098d-4339-96ba-72933ac2e707">Source\SampleRap.CustomPage\SampleRap.CustomPage</CustomPage>
</CustomPages>
</Application>
</Applications>
</RAPBuilder>
</BuildTools>The application.xml schema must stay aligned with build.xml.
- Assembly names in
application.xmlmust match assemblies included inbuild.xml. - Custom page GUIDs must match exactly between both files.
- The application name/version metadata should reflect the package you are building.
The easiest way to create application.xml is exporting the application schema from Relativity and then validating that it matches your build inputs.
relsvr-rap.exe build --source "C:\Projects\MyRelativityApp" `
--input "DevelopmentScripts\build.xml" `
--version "1.5.0.0" `
--relativity-server-release 2025 `
--warnings-as-errors false `
--log-file "Artifacts\Logs\rapbuild.log" `
--log-level InformationExample output for a RAP that passes validation:
____ _ ____ ____ _ _ _
| _ \ / \ | _ \ | __ ) _ _ (_) | | __| | ___ _ __
| |_) | / _ \ | |_) | | _ \ | | | | | | | | / _` | / _ \ | '__|
| _ < / ___ \ | __/ | |_) | | |_| | | | | | | (_| | | __/ | |
|_| \_\ /_/ \_\ |_| |____/ \__,_| |_| |_| \__,_| \___| |_|
[12:58:08 RAPBuilder] [Information] relsvr-rap version: 4.0.6.0
[12:58:08 RAPBuilder] [Information] Loading SDK dependencies...
[12:58:08 RAPBuilder] [Information] Parameters passed:
[12:58:08 RAPBuilder] [Information] Source directory is C:\s\rep\server-sample-rap
[12:58:08 RAPBuilder] [Information] Input file path is DevelopmentScripts\build.xml
[12:58:08 RAPBuilder] [Information] RAP Version: 1.0.0.0
[12:58:08 RAPBuilder] [Information] Target Relativity Release is 2024
[12:58:08 RAPBuilder] [Information] Reading input file DevelopmentScripts\build.xml
[12:58:08 RAPBuilder] [Information] Validating RAPs...
[12:58:08 RAPBuilder] [Information] Building RAPs...
[12:58:08 RAPBuilder] [Information] Ensuring all assemblies exist
[12:58:08 RAPBuilder] [Information] Hashing assemblies
[12:58:08 RAPBuilder] [Information] Ensuring all resource files exist
[12:58:08 RAPBuilder] [Information] Moving resource files to destination folder
[12:58:08 RAPBuilder] [Information] Ensuring all custom pages exist
[12:58:08 RAPBuilder] [Information] Hashing custom pages
[12:58:08 RAPBuilder] [Information] Validating all assemblies
[12:58:08 RAPBuilder] [Information] SdkCompatibilityResult: Total files validated: 22
[12:58:08 RAPBuilder] [Information] SdkCompatibilityResult: Total successful validations: 22
[12:58:08 RAPBuilder] [Information] SdkCompatibilityResult: Total failed validations: 0
[12:58:08 RAPBuilder] [Information] Creating RAP file
[12:58:08 RAPBuilder] [Information] Successfully created RAP file SampleRap.rap at C:\s\rep\server-sample-rap\Artifacts\SampleRap.rap
[12:58:08 RAPBuilder] [Information] Complete!
Example output for a RAP that fails SDK validation:
____ _ ____ ____ _ _ _
| _ \ / \ | _ \ | __ ) _ _ (_) | | __| | ___ _ __
| |_) | / _ \ | |_) | | _ \ | | | | | | | | / _` | / _ \ | '__|
| _ < / ___ \ | __/ | |_) | | |_| | | | | | | (_| | | __/ | |
|_| \_\ /_/ \_\ |_| |____/ \__,_| |_| |_| \__,_| \___| |_|
[13:07:04 RAPBuilder] [Information] relsvr-rap version: 4.0.6.0
[13:07:04 RAPBuilder] [Information] Loading SDK dependencies...
[13:07:04 RAPBuilder] [Information] Parameters passed:
[13:07:04 RAPBuilder] [Information] Source directory is C:\s\rep\assets\sdktesting
[13:07:04 RAPBuilder] [Information] Input file path is C:\s\rep\assets\sdktesting\DevelopmentScripts\build.xml
[13:07:04 RAPBuilder] [Information] RAP Version: 1.0.0.0
[13:07:04 RAPBuilder] [Information] Target Relativity Release is 2026
[13:07:04 RAPBuilder] [Information] Reading input file C:\s\rep\assets\sdktesting\DevelopmentScripts\build.xml
[13:07:04 RAPBuilder] [Information] Validating RAPs...
[13:07:04 RAPBuilder] [Information] Building RAPs...
[13:07:04 RAPBuilder] [Information] Ensuring all assemblies exist
[13:07:04 RAPBuilder] [Information] Hashing assemblies
[13:07:04 RAPBuilder] [Information] Ensuring all resource files exist
[13:07:04 RAPBuilder] [Information] Moving resource files to destination folder
[13:07:04 RAPBuilder] [Information] Ensuring all custom pages exist
[13:07:04 RAPBuilder] [Information] Hashing custom pages
[13:07:04 RAPBuilder] [Information] Validating all assemblies
[13:07:04 RAPBuilder] [Fatal] SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: kCura.Agent, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Fatal] SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: Relativity.API, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Fatal] SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: kCura.Agent, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Fatal] SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: Relativity.API, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Information] SdkCompatibilityResult: Total files validated: 2
[13:07:04 RAPBuilder] [Information] SdkCompatibilityResult: Total successful validations: 0
[13:07:04 RAPBuilder] [Information] SdkCompatibilityResult: Total failed validations: 2
[13:07:04 RAPBuilder] [Information] Validation errors found: 4
[13:07:04 RAPBuilder] [Error] ERROR SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: kCura.Agent, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Error] ERROR SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: Relativity.API, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Error] ERROR SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: kCura.Agent, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Error] ERROR SDKTesting.dll - Has a reference to an SDK version that is unsupported (SDK name: Relativity.API, version found: 5000.0.2.0, version required: 5001.1.1.0). Fix: install/update to 5001.1.1.0.
[13:07:04 RAPBuilder] [Error] One or more assemblies had validation errors.
| Error | Cause | Solution |
|---|---|---|
relsvr-rap is not recognized |
Tool not installed or not on PATH |
Install the tool and ensure your shell can resolve relsvr-rap |
| Source directory does not exist | Invalid --source path |
Verify the path exists and is readable |
| Project input file does not exist | Invalid --input path |
Ensure DevelopmentScripts\build.xml exists at the specified location |
| Assembly not found in schema | build.xml and application.xml are out of sync |
Add/update the assembly entry in application.xml |
| Custom page GUID mismatch | GUID differs between files | Ensure the same GUID is used in both files |
An example Relativity Application Package that uses RAP Builder can be found here.